// This file was decompiled using SASCM.ini published on 2021-07-05
{$CLEO .cs}
{$USE CLEO+}
{$USE ini}

0000: NOP 
script_name 'SUKUNA' 

:SUKUNA_13
wait 0 
if and
   Player.Defined($PLAYER_CHAR)
   Player.Controllable($PLAYER_CHAR)
   not Actor.Driving($PLAYER_ACTOR)
   not Actor.Dead($PLAYER_ACTOR)
8965:   not actor $PLAYER_ACTOR swimming 
jf @SUKUNA_13 
if 
test_cheat "SKN" 
jf @SUKUNA_13 
write_int_to_ini_file 1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "ACTIVE" 
write_int_to_ini_file 1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SKIN" 
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
$CLV = 0 
$KAI = 1 

:SUKUNA_212
023C: load_special_actor 'SKN1' as 6 // models 290-299 
038B: load_requested_models 
if 
023D:   special_actor 6 loaded 
jf @SUKUNA_212 
24@ = Audiostream.Load("CLEO\SOUND\S_INTRO.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
0169: set_fade_color_RGB 255 255 255 
fade 0 time 300 
Camera.Shake(300)
0792: disembark_instantly_actor $PLAYER_ACTOR 
0812: AS_actor $PLAYER_ACTOR perform_animation "KO_SHOT_STOM" IFP "PED" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0669: 0@ = attach_particle "SUKUNA" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.5 type 4 
064F: remove_references_to_particle 0@ 
wait 200 
fade 1 time 100 
wait 1000 
0169: set_fade_color_RGB 0 0 0 
fade 0 time 300 
wait 1000 
09C7: change_player $PLAYER_CHAR model_to #SPECIAL06 
0296: unload_special_actor 6 
gosub @SUKUNA_55871 
write_memory 6330958 size 4 value -1869574000 virtual_protect 1 
write_memory 6330962 size 2 value 37008 virtual_protect 1 
Player.CanMove($PLAYER_CHAR, True)
Actor.SetWalkStyle($PLAYER_ACTOR, "SUKUNA")
0687: clear_actor $PLAYER_ACTOR task 
wait 1200 
fade 1 time 500 
Audiostream.Release(24@)
Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, WeaponType.Unarmed, 0)
Actor.Health($PLAYER_ACTOR) = 1000
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
02A9: set_actor $PLAYER_ACTOR immune_to_nonplayer 1 
Player.InfiniteRun($PLAYER_ACTOR, True)
0992: set_player $PLAYER_CHAR weapons_scrollable 0 
055D: make_player $PLAYER_CHAR fireproof 1 
0489: set_actor $PLAYER_ACTOR muted 1 
01B9: set_actor $PLAYER_ACTOR armed_weapon_to 0 
write_memory 9867628 size 4 value 1 virtual_protect 0 
gosub @SUKUNA_45706 
0812: AS_actor $PLAYER_ACTOR perform_animation "INTRO1" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
24@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE0.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)

:SUKUNA_686
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "INTRO1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "INTRO1"
  25@ >= 0.99 
jf @SUKUNA_686 
Audiostream.Release(24@)
04EF: release_animation "SUKUNA" 
$SMK = 0 

:SUKUNA_762
wait 0 
if 
test_cheat "SKN" 
jf @SUKUNA_1073 
0169: set_fade_color_RGB 0 0 0 
fade 0 time 200 
wait 300 
0992: set_player $PLAYER_CHAR weapons_scrollable 1 
0687: clear_actor $PLAYER_ACTOR task 
04EF: release_animation "SUKUNA_W" 
write_memory 6330958 size 4 value 81036937 virtual_protect 1 
write_memory 6330962 size 2 value 0 virtual_protect 1 
Player.CanMove($PLAYER_CHAR, True)
09C7: change_player $PLAYER_CHAR model_to #NULL 
fade 1 time 200 
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "ACTIVE" 
write_int_to_ini_file 1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SKIN" 
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
Actor.SetImmunities($PLAYER_ACTOR, False, False, False, False, False)
Player.InfiniteRun($PLAYER_ACTOR, False)
0992: set_player $PLAYER_CHAR weapons_scrollable 1 
055D: make_player $PLAYER_CHAR fireproof 0 
0489: set_actor $PLAYER_ACTOR muted 0 
write_memory 9867628 size 4 value 0 virtual_protect 0 
wait 500 
jump @SUKUNA_13 

:SUKUNA_1073
if or
0741:   actor $PLAYER_ACTOR busted 
   Player.Wasted($PLAYER_CHAR)
jf @SUKUNA_1433 

:SUKUNA_1094
if or
   Player.Wasted($PLAYER_CHAR)
0741:   actor $PLAYER_ACTOR busted 
jf @SUKUNA_1126 
wait 0 
jump @SUKUNA_1094 

:SUKUNA_1126
write_memory 6330958 size 4 value -1869574000 virtual_protect 1 
write_memory 6330962 size 2 value 37008 virtual_protect 1 
Player.CanMove($PLAYER_CHAR, True)
Actor.SetWalkStyle($PLAYER_ACTOR, "SUKUNA")
wait 0 
jump @SUKUNA_762 

:SUKUNA_1189
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_1311 
write_int_to_ini_file -1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
write_int_to_ini_file 2 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
stream_custom_script_from_label @SUKUNA_57337 
wait -1 

:SUKUNA_1311
return 

:SUKUNA_1313
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_1431 
write_int_to_ini_file -1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
write_int_to_ini_file 1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
stream_custom_script_from_label @SUKUNA_57337 

:SUKUNA_1431
return 

:SUKUNA_1433
Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, WeaponType.Unarmed, 0)
Actor.Health($PLAYER_ACTOR) = 1000
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
02A9: set_actor $PLAYER_ACTOR immune_to_nonplayer 1 
Player.InfiniteRun($PLAYER_ACTOR, True)
0992: set_player $PLAYER_CHAR weapons_scrollable 0 
055D: make_player $PLAYER_CHAR fireproof 1 
0489: set_actor $PLAYER_ACTOR muted 1 
01B9: set_actor $PLAYER_ACTOR armed_weapon_to 0 
if and
   Player.Defined($PLAYER_CHAR)
   not Actor.Driving($PLAYER_ACTOR)
847A:   not actor $PLAYER_ACTOR driving_bike 
   not Actor.Dead($PLAYER_ACTOR)
8965:   not actor $PLAYER_ACTOR swimming 
jf @SUKUNA_762 
gosub @SUKUNA_44866 
gosub @SUKUNA_31554 
if 
00E1:   player 0 pressed_key 17 
jf @SUKUNA_4416 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
gosub @SUKUNA_1189 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "ATK_1" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
write_int_to_ini_file 1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
if 
80E1:   not player 0 pressed_key 6 
gosub_if_false @SUKUNA_9642 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_1821 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 3.0 3.0 2.5 
jf @SUKUNA_1821 
gosub @SUKUNA_56093 

:SUKUNA_1821
0393: actor $PLAYER_ACTOR perform_animation "ATK_1" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_1"
  25@ >= 0.22 
jf @SUKUNA_1821 
gosub @SUKUNA_45759 
04EF: release_animation "SUKUNA" 
066A: 0@ = attach_particle "S_ATK_FX1" to_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.5 rotation 30.0 -60.0 -30.0 type 1 
064F: remove_references_to_particle 0@ 

:SUKUNA_1963
0393: actor $PLAYER_ACTOR perform_animation "ATK_1" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_1"
  25@ >= 0.46 
jf @SUKUNA_1963 
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_2240 

:SUKUNA_2049
0393: actor $PLAYER_ACTOR perform_animation "ATK_1" at 1.3 times_normal_rate 
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_2240 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_1"
  25@ >= 0.7 
jf @SUKUNA_2049 

:SUKUNA_2135
0393: actor $PLAYER_ACTOR perform_animation "ATK_1" at 1.3 times_normal_rate 
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_2228 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_1"
  25@ >= 0.99 
jf @SUKUNA_2135 
jump @SUKUNA_762 

:SUKUNA_2228
0792: disembark_instantly_actor $PLAYER_ACTOR 
jump @SUKUNA_762 

:SUKUNA_2240
if 
00E1:   player 0 pressed_key 17 
jf @SUKUNA_4416 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "ATK_2" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
write_int_to_ini_file 2 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
if 
80E1:   not player 0 pressed_key 6 
gosub_if_false @SUKUNA_9642 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_2497 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 3.0 3.0 2.5 
jf @SUKUNA_2497 
gosub @SUKUNA_56093 

:SUKUNA_2497
0393: actor $PLAYER_ACTOR perform_animation "ATK_2" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_2"
  25@ >= 0.3 
jf @SUKUNA_2497 
gosub @SUKUNA_45759 
04EF: release_animation "SUKUNA" 
0669: 0@ = attach_particle "S_ATK_FX2" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
064F: remove_references_to_particle 0@ 

:SUKUNA_2624
0393: actor $PLAYER_ACTOR perform_animation "ATK_2" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_2"
  25@ >= 0.5 
jf @SUKUNA_2624 
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_2803 

:SUKUNA_2710
0393: actor $PLAYER_ACTOR perform_animation "ATK_2" at 1.3 times_normal_rate 
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_2803 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_2"
  25@ >= 0.72 
jf @SUKUNA_2710 
jump @SUKUNA_762 

:SUKUNA_2803
if 
00E1:   player 0 pressed_key 17 
jf @SUKUNA_4416 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "ATK_3" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
write_int_to_ini_file 3 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
if 
80E1:   not player 0 pressed_key 6 
gosub_if_false @SUKUNA_9642 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_3060 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 3.0 3.0 2.5 
jf @SUKUNA_3060 
gosub @SUKUNA_56093 

:SUKUNA_3060
0393: actor $PLAYER_ACTOR perform_animation "ATK_3" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_3" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_3"
  25@ >= 0.33 
jf @SUKUNA_3060 
$CLV = 6 
Camera.Shake(100)
gosub @SUKUNA_45759 
04EF: release_animation "SUKUNA" 
0669: 0@ = attach_particle "IMP_FX1" to_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 type 4 
064F: remove_references_to_particle 0@ 
$CLV = 0 

:SUKUNA_3203
0393: actor $PLAYER_ACTOR perform_animation "ATK_3" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_3" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_3"
  25@ >= 0.77 
jf @SUKUNA_3203 
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_3392 

:SUKUNA_3289
if 
80E1:   not player 0 pressed_key 17 
jf @SUKUNA_3392 
0393: actor $PLAYER_ACTOR perform_animation "ATK_3" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_3" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_3"
  25@ >= 0.9 
jf @SUKUNA_3289 
if 
00E1:   player 0 pressed_key 17 
jf @SUKUNA_762 

:SUKUNA_3392
if 
00E1:   player 0 pressed_key 17 
jf @SUKUNA_4416 
04ED: load_animation "SUKUNA" 
Model.Load(3065)
038B: load_requested_models 
if and
04EE:   animation "SUKUNA" loaded 
   Model.Available(3065)
jf @SUKUNA_762 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "ATK_4" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
write_int_to_ini_file 4 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
if 
80E1:   not player 0 pressed_key 6 
gosub_if_false @SUKUNA_9642 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_3659 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 3.0 3.0 2.5 
jf @SUKUNA_3659 
gosub @SUKUNA_56093 

:SUKUNA_3659
0393: actor $PLAYER_ACTOR perform_animation "ATK_4" at 1.3 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "ATK_4" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "ATK_4"
  25@ >= 0.895 
jf @SUKUNA_3659 
22@ = Audiostream.Load("CLEO\SOUND\SLASHES2.MP3")
Audiostream.PerformAction(22@, AudioStreamState.Play)
Audiostream.Loop(22@, 1)
0612: set_actor $PLAYER_ACTOR animation "ATK_4" paused 0 
$CLV = 2 
TIMERA = 0 
TIMERB = 500 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 5.0 50.0 
Object.Create(24@, 3065, 1@, 2@, 3@)
Object.SetImmunities(24@, True, True, True, True, True)
Object.CollisionDetection(24@, False)
Object.ToggleInMovingList(24@, False)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(24@) = 10@
gosub @SUKUNA_45759 

:SUKUNA_3906
Camera.Shake(100)
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_11333 
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_11333 
wait 0 
if 
  TIMERB > 100 
jf @SUKUNA_4320 
gosub @SUKUNA_45759 
066D: 0@ = attach_particle "IMP_FX10" to_object 24@ with_offset 0.0 0.0 -50.0 type 1 
064F: remove_references_to_particle 0@ 
TIMERB = 0 

:SUKUNA_4320
if 
  TIMERA > 500 
jf @SUKUNA_3906 
Audiostream.Release(22@)
$CLV = -2 
gosub @SUKUNA_45759 
wait 100 
0612: set_actor $PLAYER_ACTOR animation "ATK_4" paused 1 
wait 0 
04EF: release_animation "SUKUNA" 
Object.Destroy(24@)
$CLV = 0 
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_4416
if 
is_key_pressed 186 
jf @SUKUNA_4798 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SKIN" 
if 
   not 10@ == 2 
jf @SUKUNA_762 
023C: load_special_actor 'SKN2' as 6 // models 290-299 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if and
023D:   special_actor 6 loaded 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
0812: AS_actor $PLAYER_ACTOR perform_animation "RIP_SHIRT1" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 330 
24@ = Audiostream.Load("CLEO\SOUND\RIP_SHIRT.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
09C7: change_player $PLAYER_CHAR model_to #SPECIAL06 
0296: unload_special_actor 6 
write_int_to_ini_file 2 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SKIN" 
0812: AS_actor $PLAYER_ACTOR perform_animation "RIP_SHIRT2" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
0669: 1@ = attach_particle "RIP_CLTH" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 1@ 
wait 630 
0687: clear_actor $PLAYER_ACTOR task 
04EF: release_animation "SUKUNA" 

:SUKUNA_4760
wait 0 
24@ = Audiostream.State(25@)
  25@ == -1 
jf @SUKUNA_4760 
Audiostream.Release(24@)
jump @SUKUNA_762 

:SUKUNA_4798
if 
is_key_pressed 81 
jf @SUKUNA_9807 
if 
80E1:   not player 0 pressed_key 16 
jf @SUKUNA_7437 
if 
   not $KAI == 2 
jf @SUKUNA_6280 
04ED: load_animation "SUKUNA" 
Model.Load(#KNIFECUR)
038B: load_requested_models 
if and
   Model.Available(#KNIFECUR)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
$CLV = 1 
$KAI = 2 
gosub @SUKUNA_9642 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "KAI_1" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 0 lockF 0 time -1 // versionB 
0169: set_fade_color_RGB 255 255 255 

:SUKUNA_4973
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_1"
  25@ >= 0.1 
jf @SUKUNA_4973 
write_int_to_ini_file 5 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 

:SUKUNA_5064
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_1"
  25@ >= 0.25 
jf @SUKUNA_5064 
fade 0 time 200 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
Object.Create(24@, #KNIFECUR, 1@, 2@, 3@)
Object.CollisionDetection(24@, False)
04D9: object 24@ set_scripted_collision_check 0 
Object.ToggleInMovingList(24@, False)
Object.SetImmunities(24@, True, True, True, True, True)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(24@) = 10@
070A: AS_actor $PLAYER_ACTOR attach_to_object 24@ offset -100.0 0.0 0.0 on_bone 6 16 perform_animation "NULL" IFP_file "NULL" time -1 
wait 0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
Object.PutAt(24@, 7@, 8@, 9@)
070B: set_actor $PLAYER_ACTOR onbone_attached_object_operation 0 
08D2: object 24@ scale_model 0.001 
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 30.0 10@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
064B: 12@ = create_particle "IMP_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 12@ 

:SUKUNA_5431
066E: create_particle "KAI_FX" attached_to_object 24@ with_offset 0.0 0.0 0.0 rotation 45.0 0.0 0.0 flag 1 store_to 11@ 
064F: remove_references_to_particle 11@ 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_1"
  25@ >= 0.35 
jf @SUKUNA_5431 
$SMK = 1 
gosub @SUKUNA_8731 
Camera.Shake(100)
if 
80E1:   not player 0 pressed_key 6 
jf @SUKUNA_5689 
0908: set_object 24@ turn_mass_to 100.0 // float 
0906: set_object 24@ mass_to 100.0 // float 
10@ = Actor.Angle($PLAYER_ACTOR)
4@ = 300.0 
7@ = 0.0 
02F6: 5@ = sine 10@ // (float) 
02F7: 6@ = cosine 10@ // (float) 
006B: 5@ *= 4@ // (float) 
006B: 6@ *= 4@ // (float) 
5@ *= -1.0 
Object.ToggleInMovingList(24@, True)
Object.Throw(24@, 5@, 6@, 7@)
jump @SUKUNA_5845 

:SUKUNA_5689
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 30.0 10@ 
0908: set_object 24@ turn_mass_to 100.0 // float 
0906: set_object 24@ mass_to 100.0 // float 
068E: get_camera_target_point_to 5@ 6@ 7@ 
068D: get_camera_position_to 2@ 3@ 4@ 
0063: 5@ -= 2@ // (float) 
0063: 6@ -= 3@ // (float) 
0063: 7@ -= 4@ // (float) 
5@ *= 300.0 
6@ *= 300.0 
7@ *= 300.0 
Object.Throw(24@, 5@, 6@, 7@)

:SUKUNA_5845
fade 1 time 200 
TIMERA = 0 

:SUKUNA_5859
066E: create_particle "KAI_FX" attached_to_object 24@ with_offset 0.0 0.0 0.0 rotation 45.0 0.0 0.0 flag 1 store_to 11@ 
064F: remove_references_to_particle 11@ 
wait 0 
Object.Throw(24@, 5@, 6@, 7@)
gosub @SUKUNA_45759 
if or
04DA:   has_object 24@ collided 
  TIMERA > 300 
jf @SUKUNA_5859 
Model.Destroy(#KNIFECUR)
04EF: release_animation "SUKUNA" 
Object.Destroy(24@)
$CLV = 0 

:SUKUNA_5988
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_1"
  25@ >= 0.5 
jf @SUKUNA_5988 
if 
is_key_pressed 81 
jf @SUKUNA_6079 
if 
80E1:   not player 0 pressed_key 16 
jf @SUKUNA_7437 
jump @SUKUNA_6280 

:SUKUNA_6079
if 
is_key_pressed 81 
jf @SUKUNA_6118 
if 
80E1:   not player 0 pressed_key 16 
jf @SUKUNA_7437 
jump @SUKUNA_6280 

:SUKUNA_6118
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_1"
  25@ >= 0.7 
jf @SUKUNA_6079 

:SUKUNA_6170
if 
is_key_pressed 81 
jf @SUKUNA_6209 
if 
80E1:   not player 0 pressed_key 16 
jf @SUKUNA_7437 
jump @SUKUNA_6268 

:SUKUNA_6209
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_1"
  25@ >= 0.99 
jf @SUKUNA_6170 
jump @SUKUNA_7430 

:SUKUNA_6268
0792: disembark_instantly_actor $PLAYER_ACTOR 
jump @SUKUNA_7430 

:SUKUNA_6280
if 
  $KAI == 2 
jf @SUKUNA_7430 
04ED: load_animation "SUKUNA" 
Model.Load(#KNIFECUR)
038B: load_requested_models 
if and
   Model.Available(#KNIFECUR)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
$CLV = 1 
$KAI = 1 
gosub @SUKUNA_9642 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "KAI_2" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 0 lockF 0 time -1 // versionB 
wait 130 
write_int_to_ini_file 5 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 

:SUKUNA_6456
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_2"
  25@ >= 0.2 
jf @SUKUNA_6456 
fade 0 time 200 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
Object.Create(24@, #KNIFECUR, 1@, 2@, 3@)
Object.CollisionDetection(24@, False)
04D9: object 24@ set_scripted_collision_check 0 
Object.ToggleInMovingList(24@, False)
Object.SetImmunities(24@, True, True, True, True, True)
070A: AS_actor $PLAYER_ACTOR attach_to_object 24@ offset -100.0 0.0 0.0 on_bone 6 16 perform_animation "NULL" IFP_file "NULL" time -1 
wait 0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
Object.PutAt(24@, 7@, 8@, 9@)
08D2: object 24@ scale_model 0.001 
070B: set_actor $PLAYER_ACTOR onbone_attached_object_operation 0 
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 0.0 10@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
064B: 12@ = create_particle "IMP_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 12@ 
TIMERA = 0 

:SUKUNA_6814
066E: create_particle "KAI_FX" attached_to_object 24@ with_offset 0.0 0.0 0.0 rotation 90.0 0.0 0.0 flag 1 store_to 11@ 
064F: remove_references_to_particle 11@ 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_2"
  25@ >= 0.3 
jf @SUKUNA_6814 
$SMK = 1 
gosub @SUKUNA_8731 
Camera.Shake(100)
if 
80E1:   not player 0 pressed_key 6 
jf @SUKUNA_7072 
0908: set_object 24@ turn_mass_to 100.0 // float 
0906: set_object 24@ mass_to 100.0 // float 
10@ = Actor.Angle($PLAYER_ACTOR)
4@ = 300.0 
7@ = 0.0 
02F6: 5@ = sine 10@ // (float) 
02F7: 6@ = cosine 10@ // (float) 
006B: 5@ *= 4@ // (float) 
006B: 6@ *= 4@ // (float) 
5@ *= -1.0 
Object.ToggleInMovingList(24@, True)
Object.Throw(24@, 5@, 6@, 7@)
jump @SUKUNA_7228 

:SUKUNA_7072
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 0.0 10@ 
0908: set_object 24@ turn_mass_to 100.0 // float 
0906: set_object 24@ mass_to 100.0 // float 
068E: get_camera_target_point_to 5@ 6@ 7@ 
068D: get_camera_position_to 2@ 3@ 4@ 
0063: 5@ -= 2@ // (float) 
0063: 6@ -= 3@ // (float) 
0063: 7@ -= 4@ // (float) 
5@ *= 300.0 
6@ *= 300.0 
7@ *= 300.0 
Object.Throw(24@, 5@, 6@, 7@)

:SUKUNA_7228
fade 1 time 200 
TIMERA = 0 

:SUKUNA_7242
066E: create_particle "KAI_FX" attached_to_object 24@ with_offset 0.0 0.0 0.5 rotation 90.0 0.0 0.0 flag 1 store_to 11@ 
064F: remove_references_to_particle 11@ 
Object.Throw(24@, 5@, 6@, 7@)
gosub @SUKUNA_45759 
wait 0 
if or
04DA:   has_object 24@ collided 
  TIMERA > 300 
jf @SUKUNA_7242 
Model.Destroy(#KNIFECUR)
04EF: release_animation "SUKUNA" 
Object.Destroy(24@)
$CLV = 0 

:SUKUNA_7371
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_2"
  25@ >= 0.5 
jf @SUKUNA_7371 
jump @SUKUNA_7430 

:SUKUNA_7430
jump @SUKUNA_762 

:SUKUNA_7437
04ED: load_animation "SUKUNA" 
Model.Load(#KNIFECUR)
038B: load_requested_models 
if and
   Model.Available(#KNIFECUR)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
gosub @SUKUNA_9642 
0922: set_camera_zoom_from 70.0 to 90.0 timelimit 1000 smooth_transition 1 
0792: disembark_instantly_actor $PLAYER_ACTOR 
$CLV = 1 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "KAI_EVD" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 

:SUKUNA_7568
wait 0 
0393: actor $PLAYER_ACTOR perform_animation "KAI_EVD" at 1.5 times_normal_rate 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_EVD" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_EVD"
  25@ >= 0.411 
jf @SUKUNA_7568 
write_int_to_ini_file 5 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
fade 0 time 200 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
Object.Create(24@, #KNIFECUR, 1@, 2@, 3@)
Object.CollisionDetection(24@, False)
04D9: object 24@ set_scripted_collision_check 0 
Object.ToggleInMovingList(24@, False)
Object.SetImmunities(24@, True, True, True, True, True)
070A: AS_actor $PLAYER_ACTOR attach_to_object 24@ offset -100.0 0.0 0.0 on_bone 6 16 perform_animation "NULL" IFP_file "NULL" time -1 
wait 0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
Object.PutAt(24@, 7@, 8@, 9@)
08D2: object 24@ scale_model 0.001 
070B: set_actor $PLAYER_ACTOR onbone_attached_object_operation 0 
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 0.0 10@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
064B: 12@ = create_particle "IMP_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 12@ 
TIMERA = 0 

:SUKUNA_7988
066E: create_particle "KAI_FX2" attached_to_object 24@ with_offset 0.0 0.0 0.0 rotation 90.0 0.0 0.0 flag 1 store_to 11@ 
064F: remove_references_to_particle 11@ 
0393: actor $PLAYER_ACTOR perform_animation "KAI_EVD" at 1.5 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_EVD" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_EVD"
  25@ >= 0.452 
jf @SUKUNA_7988 
$SMK = 1 
gosub @SUKUNA_8731 
Camera.Shake(100)
if 
80E1:   not player 0 pressed_key 6 
jf @SUKUNA_8270 
0908: set_object 24@ turn_mass_to 100.0 // float 
0906: set_object 24@ mass_to 100.0 // float 
10@ = Actor.Angle($PLAYER_ACTOR)
4@ = 300.0 
7@ = 0.0 
02F6: 5@ = sine 10@ // (float) 
02F7: 6@ = cosine 10@ // (float) 
006B: 5@ *= 4@ // (float) 
006B: 6@ *= 4@ // (float) 
5@ *= -1.0 
Object.ToggleInMovingList(24@, True)
Object.Throw(24@, 5@, 6@, 7@)
jump @SUKUNA_8426 

:SUKUNA_8270
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 0.0 10@ 
0908: set_object 24@ turn_mass_to 100.0 // float 
0906: set_object 24@ mass_to 100.0 // float 
068E: get_camera_target_point_to 5@ 6@ 7@ 
068D: get_camera_position_to 2@ 3@ 4@ 
0063: 5@ -= 2@ // (float) 
0063: 6@ -= 3@ // (float) 
0063: 7@ -= 4@ // (float) 
5@ *= 300.0 
6@ *= 300.0 
7@ *= 300.0 
Object.Throw(24@, 5@, 6@, 7@)

:SUKUNA_8426
fade 1 time 200 
TIMERA = 0 

:SUKUNA_8440
066E: create_particle "KAI_FX2" attached_to_object 24@ with_offset 0.0 0.0 0.5 rotation 90.0 0.0 0.0 flag 1 store_to 11@ 
064F: remove_references_to_particle 11@ 
Object.Throw(24@, 5@, 6@, 7@)
gosub @SUKUNA_45759 
wait 0 
if or
04DA:   has_object 24@ collided 
  TIMERA > 300 
jf @SUKUNA_8440 
Object.Destroy(24@)

:SUKUNA_8548
wait 0 
0393: actor $PLAYER_ACTOR perform_animation "KAI_EVD" at 1.5 times_normal_rate 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_EVD" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_EVD"
  25@ >= 0.776 
jf @SUKUNA_8548 

:SUKUNA_8623
wait 0 
0393: actor $PLAYER_ACTOR perform_animation "KAI_EVD" at 1.3 times_normal_rate 
0613: 25@ = actor $PLAYER_ACTOR animation "KAI_EVD" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "KAI_EVD"
  25@ >= 0.852 
jf @SUKUNA_8623 
Model.Destroy(#KNIFECUR)
04EF: release_animation "SUKUNA" 
Camera.SetBehindPlayer
Camera.Restore
$CLV = 0 
jump @SUKUNA_762 

:SUKUNA_8731
Model.Load(1598)
038B: load_requested_models 
if 
   Model.Available(1598)
jf @SUKUNA_9640 
  $SMK == 1 
jf @SUKUNA_9038 
Object.Create(0@, 1598, 0.0, 0.0, 0.0)
Object.CollisionDetection(0@, False)
0750: set_object 0@ visibility 0 
9@ = -70.0 

:SUKUNA_8815
069B: attach_object 0@ to_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.5 rotation 0.0 0.0 9@ 
Object.StorePos(0@, 1@, 2@, 3@)
0400: store_coords_to 4@ 5@ 6@ from_object 0@ with_offset 0.0 25.0 0.0 
0063: 4@ -= 1@ // (float) 
0063: 5@ -= 2@ // (float) 
0063: 6@ -= 3@ // (float) 
095C: create_smoke_at 1@ 2@ 3@ velocity 4@ 5@ 6@ RGBA 1.0 1.0 1.0 0.2 size 0.5 last_factor 0.1 
9@ += 3.0 
if 
  9@ >= 70.0 
jf @SUKUNA_8815 
0682: detach_object 0@ 0.0 0.0 0.0 collision_detection 0 
Object.Destroy(0@)
Model.Destroy(1598)
jump @SUKUNA_9640 

:SUKUNA_9038
  $SMK == 2 
jf @SUKUNA_9322 
Object.Create(0@, 1598, 0.0, 0.0, 0.0)
Object.CollisionDetection(0@, False)
0750: set_object 0@ visibility 0 
9@ = 0.0 

:SUKUNA_9099
069B: attach_object 0@ to_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.5 rotation 0.0 0.0 9@ 
Object.StorePos(0@, 1@, 2@, 3@)
0400: store_coords_to 4@ 5@ 6@ from_object 0@ with_offset 0.0 20.0 0.0 
0063: 4@ -= 1@ // (float) 
0063: 5@ -= 2@ // (float) 
0063: 6@ -= 3@ // (float) 
095C: create_smoke_at 1@ 2@ 3@ velocity 4@ 5@ 6@ RGBA 1.0 1.0 1.0 0.2 size 0.5 last_factor 0.1 
9@ += 3.0 
if 
  9@ >= 360.0 
jf @SUKUNA_9099 
0682: detach_object 0@ 0.0 0.0 0.0 collision_detection 0 
Object.Destroy(0@)
Model.Destroy(1598)
jump @SUKUNA_9640 

:SUKUNA_9322
  $SMK == 3 
jf @SUKUNA_9640 
Object.Create(0@, 1598, 0.0, 0.0, 0.0)
Object.CollisionDetection(0@, False)
0750: set_object 0@ visibility 0 
0208: 9@ = random_float_in_ranges 150.0 210.0 
0682: detach_object 0@ 0.0 0.0 0.0 collision_detection 0 
069B: attach_object 0@ to_actor $PLAYER_ACTOR with_offset 0.0 1.0 -1.0 rotation 0.0 0.0 9@ 
Object.StorePos(0@, 1@, 2@, 3@)
0400: store_coords_to 4@ 5@ 6@ from_object 0@ with_offset 0.0 5.0 -1.0 
0063: 4@ -= 1@ // (float) 
0063: 5@ -= 2@ // (float) 
0063: 6@ -= 3@ // (float) 
095C: create_smoke_at 1@ 2@ 3@ velocity 4@ 5@ 6@ RGBA 1.0 1.0 1.0 0.5 size 0.4 last_factor 0.05 
0682: detach_object 0@ 0.0 0.0 0.0 collision_detection 0 
069B: attach_object 0@ to_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.5 rotation 0.0 0.0 0.0 
Object.Destroy(0@)
Model.Destroy(1598)
jump @SUKUNA_9640 

:SUKUNA_9640
return 

:SUKUNA_9642
04C4: store_coords_to 5@ 6@ 7@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
068D: get_camera_position_to 9@ 17@ 20@ 
0087: 20@ = 9@ // (float) 
0087: 31@ = 17@ // (float) 
0063: 20@ -= 5@ // (float) 
0063: 31@ -= 6@ // (float) 
20@ *= -2.0 
31@ *= -2.0 
005B: 9@ += 20@ // (float) 
005B: 17@ += 31@ // (float) 
0063: 9@ -= 5@ // (float) 
0063: 17@ -= 6@ // (float) 
9@ *= 5.0 
17@ *= 5.0 
0604: get_Z_angle_for_point 9@ 17@ store_to 31@ 
Actor.Angle($PLAYER_ACTOR) = 31@
return 

:SUKUNA_9807
if 
is_key_pressed 69 
jf @SUKUNA_15249 
if 
   not is_key_pressed 18 
jf @SUKUNA_11548 
if 
80E1:   not player 0 pressed_key 16 
jf @SUKUNA_22036 
Model.Load(3065)
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if and
   Model.Available(3065)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
if 
80E1:   not player 0 pressed_key 6 
jf @SUKUNA_10082 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_10082 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if and
80FE:   not actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.0 2.0 2.0 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 30.0 30.0 30.0 
jf @SUKUNA_10082 
gosub @SUKUNA_56093 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 50.0 
jump @SUKUNA_10125 

:SUKUNA_10082
gosub @SUKUNA_55928 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 5.0 50.0 
jump @SUKUNA_10125 

:SUKUNA_10125
0792: disembark_instantly_actor $PLAYER_ACTOR 
$CLV = 2 
0812: AS_actor $PLAYER_ACTOR perform_animation "HACHI" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
0669: 0@ = attach_particle "SP_POWERS" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
064F: remove_references_to_particle 0@ 
wait 450 
0612: set_actor $PLAYER_ACTOR animation "HACHI" paused 0 
22@ = Audiostream.Load("CLEO\SOUND\SLASHES2.MP3")
Audiostream.PerformAction(22@, AudioStreamState.Play)
Audiostream.Loop(22@, 1)
TIMERA = 0 
TIMERB = 500 
Object.Create(24@, 3065, 1@, 2@, 3@)
Object.SetImmunities(24@, True, True, True, True, True)
Object.CollisionDetection(24@, False)
Object.ToggleInMovingList(24@, False)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(24@) = 10@
gosub @SUKUNA_45759 

:SUKUNA_10360
Camera.Shake(100)
0208: 6@ = random_float_in_ranges -5.0 5.0 
0208: 7@ = random_float_in_ranges -3.0 3.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_11333 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -5.0 5.0 
0208: 7@ = random_float_in_ranges -3.0 3.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -5.5 5.5 
0208: 7@ = random_float_in_ranges -4.0 4.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_11333 
0208: 6@ = random_float_in_ranges -5.5 5.5 
0208: 7@ = random_float_in_ranges -4.0 4.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -5.5 5.5 
0208: 7@ = random_float_in_ranges -4.0 4.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX3" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -5.0 5.0 
0208: 7@ = random_float_in_ranges -3.0 3.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_11333 
0208: 6@ = random_float_in_ranges -5.0 5.0 
0208: 7@ = random_float_in_ranges -3.0 3.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -5.5 5.5 
0208: 7@ = random_float_in_ranges -4.0 4.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_11333 
0208: 6@ = random_float_in_ranges -5.5 5.5 
0208: 7@ = random_float_in_ranges -4.0 4.0 
0208: 8@ = random_float_in_ranges -50.5 -47.0 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
wait 0 
if 
  TIMERB > 100 
jf @SUKUNA_11232 
gosub @SUKUNA_45759 
066D: 0@ = attach_particle "IMP_FX10" to_object 24@ with_offset 0.0 0.0 -49.0 type 1 
064F: remove_references_to_particle 0@ 
066D: 0@ = attach_particle "IMP_FX3" to_object 24@ with_offset 0.0 0.0 -49.0 type 1 
064F: remove_references_to_particle 0@ 
TIMERB = 0 

:SUKUNA_11232
if 
  TIMERA > 1500 
jf @SUKUNA_10360 
Camera.Shake(200)
066E: create_particle "HACHI_FX4" attached_to_object 24@ with_offset 0.0 0.0 -50.0 rotation 180.0 0.0 0.0 flag 1 store_to 0@ 
064F: remove_references_to_particle 0@ 
0612: set_actor $PLAYER_ACTOR animation "HACHI" paused 1 
jump @SUKUNA_11441 

:SUKUNA_11333
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 6@ 7@ -49.0 
02CE: 4@ = ground_z_at 1@ 2@ 3@ 
0063: 3@ -= 4@ // (float) 
if 
  3.0 > 3@ 
jf @SUKUNA_11439 
066D: 0@ = attach_particle "HACHI_G_FX" to_object 24@ with_offset 6@ 7@ -50.8 type 1 
064F: remove_references_to_particle 0@ 

:SUKUNA_11439
return 

:SUKUNA_11441
04EF: release_animation "SUKUNA" 
Object.Destroy(24@)
Model.Destroy(3065)
Audiostream.Release(22@)
write_int_to_ini_file 8 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
wait 0 
$CLV = -2 
gosub @SUKUNA_45759 
$CLV = 0 
wait 0 
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_11548
Model.Load(2905)
Model.Load(2906)
Model.Load(2907)
Model.Load(2908)
Model.Load(3065)
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if and
   Model.Available(2905)
   Model.Available(2906)
   Model.Available(2907)
   Model.Available(2908)
   Model.Available(3065)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_10082 
gosub @SUKUNA_56093 
0812: AS_actor $PLAYER_ACTOR perform_animation "TELEP" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 100 
write_int_to_ini_file 12 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 0@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
wait 100 
0792: disembark_instantly_actor 31@ 
0812: AS_actor 31@ perform_animation "IDLE_HBHB" IFP "PED" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0619: enable_actor 31@ collision_detection 0 
10@ = Actor.Angle(31@)
10@ += 180.0 
Actor.Angle($PLAYER_ACTOR) = 10@
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 1.0 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
Actor.PutAt($PLAYER_ACTOR, 1@, 2@, 3@)
067E: put_camera_on_actor $PLAYER_ACTOR offset -3.0 -3.0 -0.5 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
wait 100 
gosub @SUKUNA_1189 
write_memory 15@ size 4 value 16@ virtual_protect 0 
wait 0 
write_int_to_ini_file 15 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 0@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor 31@ perform_animation "FUKUMA_00" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0812: AS_actor $PLAYER_ACTOR perform_animation "HACHI2_1" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 

:SUKUNA_12203
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "HACHI2_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "HACHI2_1"
  25@ >= 0.415 
jf @SUKUNA_12203 
write_int_to_ini_file 14 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0619: enable_actor 31@ collision_detection 1 
067E: put_camera_on_actor $PLAYER_ACTOR offset -3.0 -3.0 -0.5 target_actor 31@ tilt 0.0 switchstyle 2 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.5 0.0 
if 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 3.0 3.0 3.0 
jf @SUKUNA_11441 
015D: set_gamespeed 0.5 
Camera.Shake(240)
05C1: AS_actor 31@ speak_from_audio_table 346 
09F1: play_audio_at_actor $PLAYER_ACTOR event 1136 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 0.0 
064B: 29@ = create_particle "SP_HIT2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 29@ 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 7.0 6.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 2.5 
5@ *= 2.5 
6@ *= 3.5 
Actor.StorePos(31@, 7@, 8@, 9@)
08C7: put_actor 31@ at 7@ 8@ 9@ dont_warp_gang 
083C: set_actor 31@ velocity_in_direction_XYZ 4@ 5@ 6@ 
0792: disembark_instantly_actor 31@ 
0812: AS_actor 31@ perform_animation "KO_SPIN_L" IFP "PED" framedelta 100.0 loopA 1 lockX 1 lockY 1 lockF 0 time -1 // versionB 
0669: 0@ = attach_particle "IMP_FX4" to_actor 31@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
wait 500 
015D: set_gamespeed 1.0 
067E: put_camera_on_actor $PLAYER_ACTOR offset -0.5 1.0 1.0 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
0812: AS_actor $PLAYER_ACTOR perform_animation "HACHI2_2" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 

:SUKUNA_12809
0393: actor $PLAYER_ACTOR perform_animation "HACHI2_2" at 1.5 times_normal_rate 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "HACHI2_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "HACHI2_2"
  25@ >= 0.9 
jf @SUKUNA_12809 
0612: set_actor $PLAYER_ACTOR animation "HACHI2_2" paused 0 
wait 200 
Camera.Restore_WithJumpCut
22@ = Audiostream.Load("CLEO\SOUND\SLASHES2.MP3")
Audiostream.PerformAction(22@, AudioStreamState.Play)
Audiostream.Loop(22@, 1)
Actor.LockInCurrentPosition(31@, True)
$CLV = 2 
TIMERA = 0 
TIMERB = 500 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 50.0 
Object.Create(24@, 3065, 1@, 2@, 3@)
Object.SetImmunities(24@, True, True, True, True, True)
Object.CollisionDetection(24@, False)
Object.ToggleInMovingList(24@, False)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(24@) = 10@
gosub @SUKUNA_45759 

:SUKUNA_13082
Camera.Shake(100)
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges -2.0 2.0 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges -2.0 2.0 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX1" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.3 2.3 
0208: 7@ = random_float_in_ranges -2.3 2.3 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.3 2.3 
0208: 7@ = random_float_in_ranges -2.3 2.3 
0208: 8@ = random_float_in_ranges -50.5 -48.5 
066D: 0@ = attach_particle "HACHI_FX2" to_object 24@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
wait 0 
if 
  TIMERB > 100 
jf @SUKUNA_13521 
gosub @SUKUNA_45759 
066D: 0@ = attach_particle "IMP_FX3" to_object 24@ with_offset 0.0 0.0 -49.0 type 1 
064F: remove_references_to_particle 0@ 
066D: 0@ = attach_particle "IMP_FX10" to_object 24@ with_offset 0.0 0.0 -49.0 type 1 
064F: remove_references_to_particle 0@ 
TIMERB = 0 

:SUKUNA_13521
if 
  TIMERA > 1500 
jf @SUKUNA_13082 
Camera.Restore
Camera.Shake(300)
0635: AS_actor $PLAYER_ACTOR aim_at_actor 31@ 0 ms 
066E: create_particle "HACHI_FX4" attached_to_object 24@ with_offset 0.0 0.0 -50.0 rotation 180.0 0.0 0.0 flag 1 store_to 0@ 
064F: remove_references_to_particle 0@ 
Actor.LockInCurrentPosition(31@, False)
0332: set_actor 31@ bleeding 1 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
Object.Create(7@, 2905, 4@, 5@, 6@)
069B: attach_object 7@ to_actor 31@ with_offset 0.13 0.0 -0.5 rotation 270.0 90.0 0.0 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset 0.13 0.0 -0.5 type 1 
064F: remove_references_to_particle 0@ 
Object.Create(8@, 2905, 4@, 5@, 6@)
069B: attach_object 8@ to_actor 31@ with_offset -0.07 0.0 -0.5 rotation 270.0 90.0 0.0 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset -0.07 0.0 -0.5 type 1 
064F: remove_references_to_particle 0@ 
Object.Create(9@, 2906, 4@, 5@, 6@)
069B: attach_object 9@ to_actor 31@ with_offset 0.5 0.0 0.4 rotation 0.0 270.0 270.0 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset 0.5 0.0 0.4 type 1 
064F: remove_references_to_particle 0@ 
Object.Create(10@, 2906, 4@, 5@, 6@)
069B: attach_object 10@ to_actor 31@ with_offset -0.5 0.0 0.4 rotation 0.0 270.0 90.0 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset -0.5 0.0 0.4 type 1 
064F: remove_references_to_particle 0@ 
Object.Create(11@, 2907, 4@, 5@, 6@)
069B: attach_object 11@ to_actor 31@ with_offset 0.0 0.0 0.1 rotation 270.0 0.0 0.0 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset 0.0 0.0 0.1 type 1 
064F: remove_references_to_particle 0@ 
Object.Create(12@, 2908, 4@, 5@, 6@)
069B: attach_object 12@ to_actor 31@ with_offset 0.03 0.05 0.7 rotation 270.0 90.0 0.0 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 31@ with_offset 0.03 0.05 0.7 type 1 
064F: remove_references_to_particle 0@ 
Object.ToggleInMovingList(12@, True)
0682: detach_object 7@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 7@ mass_to 10.0 // float 
0908: set_object 7@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(7@, True)
04D9: object 7@ set_scripted_collision_check 1 
20@ = Object.Angle(7@)
20@ += 270.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 10.0 
3@ *= 10.0 
2@ *= 1.0 
Object.Throw(7@, 2@, 3@, 0.0)
0682: detach_object 8@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 8@ mass_to 10.0 // float 
0908: set_object 8@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(8@, True)
04D9: object 8@ set_scripted_collision_check 1 
20@ = Object.Angle(8@)
20@ = 90.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 10.0 
3@ *= 10.0 
2@ *= 1.0 
Object.Throw(8@, 2@, 3@, 0.0)
0682: detach_object 9@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 9@ mass_to 10.0 // float 
0908: set_object 9@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(9@, True)
04D9: object 9@ set_scripted_collision_check 1 
20@ = Object.Angle(9@)
20@ += 90.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= -10.0 
3@ *= -10.0 
2@ *= -1.0 
Object.Throw(9@, 2@, 3@, 5.0)
05A2: set_object 9@ rotation_velocity_about_an_axis 30.0 0.0 0.0 through_center_of_mass 
0682: detach_object 10@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 10@ mass_to 10.0 // float 
0908: set_object 10@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(10@, True)
04D9: object 10@ set_scripted_collision_check 1 
20@ = Object.Angle(10@)
20@ += 270.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 10.0 
3@ *= 10.0 
2@ *= -1.0 
Object.Throw(10@, 2@, 3@, 5.0)
05A2: set_object 10@ rotation_velocity_about_an_axis 30.0 0 0.0 through_center_of_mass 
0682: detach_object 11@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 11@ mass_to 10.0 // float 
0908: set_object 11@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(11@, True)
04D9: object 11@ set_scripted_collision_check 1 
20@ = Object.Angle(11@)
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 10.0 
3@ *= 10.0 
2@ *= -1.0 
Object.Throw(11@, 2@, 3@, 0.0)
0682: detach_object 12@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 12@ mass_to 10.0 // float 
0908: set_object 12@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(12@, True)
04D9: object 12@ set_scripted_collision_check 1 
20@ = Object.Angle(12@)
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= -10.0 
3@ *= -10.0 
2@ *= -1.0 
Object.Throw(12@, 2@, 3@, 7.0)
05BE: AS_actor 31@ die 
0619: enable_actor 31@ collision_detection 0 
0337: set_actor 31@ visibility 0 
Actor.RemoveReferences(31@)
Object.RemoveReferences(7@)
Object.RemoveReferences(8@)
Object.RemoveReferences(9@)
Object.RemoveReferences(10@)
Object.RemoveReferences(11@)
Object.RemoveReferences(12@)
0169: set_fade_color_RGB 255 0 0 
fade 0 time 200 
wait 100 
fade 1 time 500 
0612: set_actor $PLAYER_ACTOR animation "HACHI2_2" paused 1 
write_int_to_ini_file 16 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
jump @SUKUNA_11441 

:SUKUNA_15249
if 
is_key_pressed 84 
jf @SUKUNA_19763 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_762 
04ED: load_animation "SUKUNA" 
Model.Load(3065)
038B: load_requested_models 
if and
04EE:   animation "SUKUNA" loaded 
Model.Load(3065)
jf @SUKUNA_762 
write_int_to_ini_file 6 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
Actor.LockInCurrentPosition($PLAYER_ACTOR, True)
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
04F9: set_sky_color 2 fade 1 
0812: AS_actor $PLAYER_ACTOR perform_animation "FUGA" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 0 
Object.Create(24@, 3065, 0.0, 0.0, 0.0)
Object.SetImmunities(24@, True, True, True, True, True)
04D9: object 24@ set_scripted_collision_check 0 
Object.CollisionDetection(24@, False)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(24@) = 10@
Object.ToggleInMovingList(24@, False)
08D2: object 24@ scale_model 0.1 
070A: AS_actor $PLAYER_ACTOR attach_to_object 24@ offset -100.0 0.0 0.0 on_bone 5 16 perform_animation "NULL" IFP_file "NULL" time 1 
066D: 20@ = attach_particle "FUGA_FX0" to_object 24@ with_offset 0.0 0.0 0.0 type 1 
064C: make_particle 20@ visible 
0883: attach_particle 20@ to_actor $PLAYER_ACTOR mode 34 

:SUKUNA_15637
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 100.0 0.0 0.0 
016F: create_particle 3 rotation_factor 90.0 size 1.5 intensity 0 flags 255 185 0 at 1@ 2@ 3@ 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 225 0 radius 5.0 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FUGA" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FUGA"
  25@ >= 0.323 
jf @SUKUNA_15637 
066D: 21@ = attach_particle "FUGA_FX0" to_object 24@ with_offset 0.0 0.0 0.0 type 1 
064C: make_particle 21@ visible 
0883: attach_particle 21@ to_actor $PLAYER_ACTOR mode 24 

:SUKUNA_15823
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 100.0 0.0 0.0 
016F: create_particle 3 rotation_factor 90.0 size 2.0 intensity 0 flags 255 185 0 at 1@ 2@ 3@ 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 225 0 radius 5.0 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FUGA" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FUGA"
  25@ >= 0.853 
jf @SUKUNA_15823 
0650: destroy_particle 21@ 
0650: destroy_particle 20@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 99.7 0.0 0.0 
Object.PutAt(24@, 1@, 2@, 3@)
070B: set_actor $PLAYER_ACTOR onbone_attached_object_operation 0 
10@ = Actor.Angle($PLAYER_ACTOR)
0453: set_object 24@ XYZ_rotation 0.0 0.0 10@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.1 0.5 100.0 
Object.PutAt(24@, 1@, 2@, 3@)
Object.ToggleInMovingList(24@, False)
wait 0 
066D: 11@ = attach_particle "FUGA_FX1" to_object 24@ with_offset 0.0 -0.3 -99.9 type 1 
064C: make_particle 11@ visible 
066D: 12@ = attach_particle "FUGA_FX1" to_object 24@ with_offset 0.0 -0.7 -99.9 type 1 
064C: make_particle 12@ visible 
066D: 13@ = attach_particle "FUGA_FX1" to_object 24@ with_offset 0.0 -1.1 -99.9 type 1 
064C: make_particle 13@ visible 
066D: 14@ = attach_particle "FUGA_FX1" to_object 24@ with_offset 0.0 -1.5 -99.9 type 1 
064C: make_particle 14@ visible 
066D: 15@ = attach_particle "FUGA_FX1" to_object 24@ with_offset 0.0 -1.9 -99.9 type 1 
064C: make_particle 15@ visible 
066D: 16@ = attach_particle "FUGA_FX2" to_object 24@ with_offset 0.0 0.0 -99.9 type 4 
064C: make_particle 16@ visible 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.8 
064B: 17@ = create_particle "FUGA_G_FX1" at 1@ 2@ 3@ type 4 
064C: make_particle 17@ visible 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.8 
064B: 18@ = create_particle "FUGA_G_FX2" at 1@ 2@ 3@ type 4 
064C: make_particle 18@ visible 
10@ = 0.0 
6@ = 0.0 
9@ = 3.0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -1.0 
0087: 7@ = 1@ // (float) 
0087: 8@ = 2@ // (float) 
gosub @SUKUNA_16552 
jump @SUKUNA_16751 

:SUKUNA_16552
if 
  10 > 10@ 
jf @SUKUNA_16699 
02D1: remove_fire $FIRE(10@,20i) 
02F6: 4@ = sine 6@ // (float) 
02F7: 5@ = cosine 6@ // (float) 
006B: 4@ *= 9@ // (float) 
006B: 5@ *= 9@ // (float) 
005B: 1@ += 4@ // (float) 
005B: 2@ += 5@ // (float) 
02CF: $FIRE(10@,20i) = create_fire_at 1@ 2@ 3@ propagation 2 size 3 
0087: 1@ = 7@ // (float) 
0087: 2@ = 8@ // (float) 
6@ -= 53.0 
9@ += 0.5 
10@ += 1 
jump @SUKUNA_16552 

:SUKUNA_16699
return 

:SUKUNA_16701
10@ = 0 

:SUKUNA_16708
if 
  10 > 10@ 
jf @SUKUNA_16749 
02D1: remove_fire $FIRE(10@,20i) 
10@ += 1 
jump @SUKUNA_16708 

:SUKUNA_16749
return 

:SUKUNA_16751
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -100.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 225 0 radius 10.0 
016F: create_particle 3 rotation_factor 90.0 size 7.0 intensity 0 flags 255 185 0 at 1@ 2@ 3@ 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FUGA" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FUGA"
  25@ >= 0.88 
jf @SUKUNA_16751 
0612: set_actor $PLAYER_ACTOR animation "FUGA" paused 0 
TIMERA = 0 

:SUKUNA_16907
gosub @SUKUNA_45759 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -100.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 225 0 radius 10.0 
016F: create_particle 3 rotation_factor 90.0 size 7.0 intensity 1 flags 255 175 0 at 1@ 2@ 3@ 
wait 0 
if 
  TIMERA > 2000 
jf @SUKUNA_16907 
0650: destroy_particle 17@ 
0650: destroy_particle 18@ 
gosub @SUKUNA_16701 
031A: remove_all_fires 
0612: set_actor $PLAYER_ACTOR animation "FUGA" paused 1 
wait 0 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 1.0 0.0 
Object.PutAt(24@, 1@, 2@, 3@)
0908: set_object 24@ turn_mass_to 1000.0 // float 
0906: set_object 24@ mass_to 1000.0 // float 
08D2: object 24@ scale_model 0.0 
10@ = Actor.Angle($PLAYER_ACTOR)
4@ = 130.0 
02F6: 5@ = sine 10@ // (float) 
02F7: 6@ = cosine 10@ // (float) 
006B: 5@ *= 4@ // (float) 
006B: 6@ *= 4@ // (float) 
5@ *= -1.0 
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(24@) = 10@
Object.ToggleInMovingList(24@, True)
Object.Throw(24@, 5@, 6@, 0.0)
04FA: reset_sky_colors_with_fade 1 
Camera.Shake(400)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -100.8 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX3" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
064B: 0@ = create_particle "FUGA_G_FX3" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
TIMERA = 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
3@ += 0.1 
064B: 0@ = create_particle "FUGA_G_FX7" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0169: set_fade_color_RGB 255 230 110 
fade 0 time 300 

:SUKUNA_17775
wait 0 
Camera.Shake(300)
Object.Throw(24@, 5@, 6@, 0.0)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -100.0 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
020C: create_explosion_with_radius 1 at 1@ 2@ 3@ 
064B: 0@ = create_particle "FUGA_FX3" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 225 0 radius 5.0 
016F: create_particle 3 rotation_factor 90.0 size 8.0 intensity 0 flags 255 185 0 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -95.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
3@ += 0.1 
064B: 0@ = create_particle "FUGA_G_FX6" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 3.0 -95.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
3@ += 0.1 
064B: 0@ = create_particle "FUGA_G_FX6" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 -3.0 -95.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
3@ += 0.1 
064B: 0@ = create_particle "FUGA_G_FX6" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
  TIMERA > 200 
jf @SUKUNA_18223 
fade 1 time 300 

:SUKUNA_18223
if 
  TIMERA > 1000 
jf @SUKUNA_17775 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -100.0 
020C: create_explosion_with_radius 10 at 1@ 2@ 3@ 
020C: create_explosion_with_radius 9 at 1@ 2@ 3@ 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
020C: create_explosion_with_radius 4 at 1@ 2@ 3@ 
020C: create_explosion_with_radius 2 at 1@ 2@ 3@ 
020C: create_explosion_with_radius 0 at 1@ 2@ 3@ 
0948: create_explosion_at 1@ 2@ 3@ type 9 camera_shake 3.0 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 10 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 5.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 -5.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 5.0 0.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset -5.0 5.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 3.0 3.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset -3.0 3.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset -3.0 -3.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 3.0 -3.0 -100.0 
020C: create_explosion_with_radius 7 at 1@ 2@ 3@ 
0650: destroy_particle 21@ 
0650: destroy_particle 11@ 
0650: destroy_particle 12@ 
0650: destroy_particle 13@ 
0650: destroy_particle 14@ 
0650: destroy_particle 15@ 
0650: destroy_particle 16@ 
Camera.Shake(500)
0169: set_fade_color_RGB 255 230 110 
fade 0 time 500 
0453: set_object 24@ XYZ_rotation 0.0 0.0 0.0 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -100.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -95.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -85.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -75.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -65.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -55.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -45.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -35.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -25.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
wait 10 
Camera.Shake(300)
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -15.0 
064B: 11@ = create_particle "FUGA_EXP" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 11@ 
0565: create_soundless_explosion_at 1@ 2@ 3@ type 8 
TIMERA = 0 

:SUKUNA_19611
Camera.Shake(200)
wait 0 
if 
  TIMERA > 150 
jf @SUKUNA_19611 
fade 1 time 500 
Object.Destroy(24@)
Model.Destroy(3065)

:SUKUNA_19656
Camera.Shake(200)
wait 0 
if 
  TIMERA > 1000 
jf @SUKUNA_19656 
0687: clear_actor $PLAYER_ACTOR task 
Actor.LockInCurrentPosition($PLAYER_ACTOR, False)
04EF: release_animation "SUKUNA" 
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_19720
wait 0 
if 
   not Actor.Animation($PLAYER_ACTOR) == "FUGA"
jf @SUKUNA_19720 
04EF: release_animation "SUKUNA" 
jump @SUKUNA_762 

:SUKUNA_19763
if and
is_key_pressed 71 
00E1:   player 0 pressed_key 16 
jf @SUKUNA_22036 
04ED: load_animation "SUKUNA" 
Model.Load(3106)
038B: load_requested_models 
if and
04EE:   animation "SUKUNA" loaded 
Model.Load(3106)
jf @SUKUNA_762 
gosub @SUKUNA_1189 
write_int_to_ini_file 7 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "S_STOMP1" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0669: 12@ = attach_particle "SKN_FX0" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
0883: attach_particle 12@ to_actor $PLAYER_ACTOR mode 24 
064F: remove_references_to_particle 12@ 
0669: 0@ = attach_particle "SP_POWERS" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
064F: remove_references_to_particle 0@ 
0922: set_camera_zoom_from 90.0 to 50.0 timelimit 630 smooth_transition 2 

:SUKUNA_20033
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "S_STOMP1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "S_STOMP1"
  25@ >= 0.63 
jf @SUKUNA_20033 
Camera.Shake(200)
0922: set_camera_zoom_from 50.0 to 110.0 timelimit 700 smooth_transition 2 
$SMK = 2 
gosub @SUKUNA_8731 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 -0.9 
064B: 15@ = create_particle "G_STOMP_FX1" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 -0.9 
064B: 15@ = create_particle "SLAM_0" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 -0.9 
064B: 15@ = create_particle "BOOM_03" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
0669: 15@ = attach_particle "G_SLAM_FX0" to_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0 type 1 
064F: remove_references_to_particle 15@ 
0669: 15@ = attach_particle "G_SLAM_FX0" to_actor $PLAYER_ACTOR with_offset 0.0 10.0 0.0 type 1 
064F: remove_references_to_particle 15@ 
0669: 15@ = attach_particle "G_SLAM_FX0" to_actor $PLAYER_ACTOR with_offset 0.0 15.0 0.0 type 1 
064F: remove_references_to_particle 15@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 2.0 -0.5 
064B: 15@ = create_particle "G_SLAM_FX1" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset -3.0 2.0 -1.5 
064B: 15@ = create_particle "G_SLAM_FX1" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 3.0 2.0 -1.5 
064B: 15@ = create_particle "G_SLAM_FX1" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
10@ = Actor.Angle($PLAYER_ACTOR)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
0@ = 0 
Object.Create($SLAM(0@,3i), 3106, 1@, 2@, 3@)
Object.Angle($SLAM(0@,3i)) = 10@
08D2: object $SLAM(0@,3i) scale_model 0.001 
04D9: object $SLAM(0@,3i) set_scripted_collision_check 0 
Object.ToggleInMovingList($SLAM(0@,3i), False)
Object.CollisionDetection($SLAM(0@,3i), False)
0400: store_coords_to 1@ 2@ 3@ from_object $SLAM(0@,3i) with_offset 0.0 0.0 0.0 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
064B: 15@ = create_particle "G_SLAM_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
Camera.Shake(100)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset -1.0 1.5 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
0@ += 1 
Object.Create($SLAM(0@,3i), 3106, 1@, 2@, 3@)
10@ = Actor.Angle($PLAYER_ACTOR)
10@ += 15.0 
Object.Angle($SLAM(0@,3i)) = 10@
08D2: object $SLAM(0@,3i) scale_model 0.001 
04D9: object $SLAM(0@,3i) set_scripted_collision_check 0 
Object.ToggleInMovingList($SLAM(0@,3i), False)
Object.CollisionDetection($SLAM(0@,3i), False)
0400: store_coords_to 1@ 2@ 3@ from_object $SLAM(0@,3i) with_offset 0.0 0.0 0.0 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
064B: 15@ = create_particle "G_SLAM_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
Camera.Shake(100)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 1.5 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
0@ += 1 
Object.Create($SLAM(0@,3i), 3106, 1@, 2@, 3@)
10@ = Actor.Angle($PLAYER_ACTOR)
10@ -= 15.0 
Object.Angle($SLAM(0@,3i)) = 10@
08D2: object $SLAM(0@,3i) scale_model 0.001 
04D9: object $SLAM(0@,3i) set_scripted_collision_check 0 
Object.ToggleInMovingList($SLAM(0@,3i), False)
Object.CollisionDetection($SLAM(0@,3i), False)
0400: store_coords_to 1@ 2@ 3@ from_object $SLAM(0@,3i) with_offset 0.0 0.0 0.0 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
064B: 15@ = create_particle "G_SLAM_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
Camera.Shake(100)
31@ = 0 
jump @SUKUNA_21316 

:SUKUNA_21316
0@ = 0 

:SUKUNA_21323
  3 > 0@ 
jf @SUKUNA_21474 
Camera.Shake(100)
0400: store_coords_to 1@ 2@ 3@ from_object $SLAM(0@,3i) with_offset 0.0 1.5 1.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
Object.PutAt($SLAM(0@,3i), 1@, 2@, 3@)
066D: $BOOM(0@,3i) = attach_particle "G_SLAM_FX2" to_object $SLAM(0@,3i) with_offset 0.0 0.0 0.0 type 4 
064F: remove_references_to_particle $BOOM(0@,3i) 
0@ += 1 
jump @SUKUNA_21323 

:SUKUNA_21474
if 
  31@ > 30 
jf @SUKUNA_21909 
0@ = 0 

:SUKUNA_21499
  3 > 0@ 
jf @SUKUNA_21998 
0400: store_coords_to 1@ 2@ 3@ from_object $SLAM(0@,3i) with_offset 0.0 0.0 0.0 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
064B: 15@ = create_particle "G_SLAM_FX2" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
Object.Destroy($SLAM(0@,3i))
0@ += 1 
jump @SUKUNA_21499 

:SUKUNA_21615
  3 > 0@ 
jf @SUKUNA_21316 
0400: store_coords_to 11@ 12@ 13@ from_object $SLAM(0@,3i) with_offset 0.0 0.0 0.5 
0400: store_coords_to 14@ 15@ 16@ from_object $SLAM(0@,3i) with_offset 0.0 2.0 0.5 
0400: store_coords_to 17@ 18@ 19@ from_object $SLAM(0@,3i) with_offset -3.0 0.0 0.2 
0400: store_coords_to 20@ 21@ 22@ from_object $SLAM(0@,3i) with_offset 3.0 0.0 1.0 
0400: store_coords_to 23@ 24@ 25@ from_object $SLAM(0@,3i) with_offset 0.0 1.5 1.5 
if and
06BD:   no_obstacles_between 11@ 12@ 13@ and 14@ 15@ 16@ solid 1 car 1 actor 1 object 1 particle 0 
06BD:   no_obstacles_between 17@ 18@ 19@ and 20@ 21@ 22@ solid 1 car 1 actor 1 object 1 particle 0 
06BD:   no_obstacles_between 11@ 12@ 13@ and 23@ 24@ 25@ solid 0 car 1 actor 1 object 0 particle 0 
jf @SUKUNA_21938 
0@ += 1 
jump @SUKUNA_21615 

:SUKUNA_21909
wait 1 
31@ += 1 
Camera.Shake(100)
0@ = 0 
jump @SUKUNA_21615 

:SUKUNA_21938
0400: store_coords_to 1@ 2@ 3@ from_object $SLAM(0@,3i) with_offset 0.0 0.0 0.0 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
0@ += 1 
jump @SUKUNA_21615 

:SUKUNA_21998
wait 0 
0687: clear_actor $PLAYER_ACTOR task 
Model.Destroy(3106)
04EF: release_animation "SUKUNA" 
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_22036
if and
00E1:   player 0 pressed_key 16 
is_key_pressed 69 
jf @SUKUNA_26202 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
gosub @SUKUNA_1189 
gosub @SUKUNA_55928 
29@ = 0 
$CLV = 5 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "CLV_DSH00" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0669: 0@ = attach_particle "SP_POWERS" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
064F: remove_references_to_particle 0@ 
0669: 12@ = attach_particle "SKN_FX0" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
0883: attach_particle 12@ to_actor $PLAYER_ACTOR mode 24 
064F: remove_references_to_particle 12@ 
0669: 13@ = attach_particle "SKN_FX0" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 4 
0883: attach_particle 13@ to_actor $PLAYER_ACTOR mode 34 
064F: remove_references_to_particle 13@ 
wait 500 
Camera.OnPed($PLAYER_ACTOR, 4, 1)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 0@ = create_particle "IMP_FX4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor $PLAYER_ACTOR perform_animation "CLV_DSH01" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 0 lockF 1 time -1 // versionB 
Camera.Shake(100)
write_int_to_ini_file 9 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0169: set_fade_color_RGB 255 255 255 
fade 0 time 300 

:SUKUNA_22484
gosub @SUKUNA_24754 
wait 0 
0393: actor $PLAYER_ACTOR perform_animation "CLV_DSH01" at 1.5 times_normal_rate 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset -1.0 0.0 0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset 1.0 0.0 0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset -0.5 0.0 -0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset 0.5 0.0 -0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges 0.5 -3.0 
0208: 8@ = random_float_in_ranges -0.5 0.5 
0669: 0@ = attach_particle "DSH_FX2" to_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges 0.0 -2.5 
0208: 8@ = random_float_in_ranges -0.5 0.5 
0669: 0@ = attach_particle "DSH_FX3" to_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_45759 
0613: 25@ = actor $PLAYER_ACTOR animation "CLV_DSH01" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "CLV_DSH01"
  25@ >= 0.2 
jf @SUKUNA_22484 
0669: 0@ = attach_particle "IMP_FX8" to_actor $PLAYER_ACTOR with_offset 0.0 -7.5 0.0 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP_FX8" to_actor $PLAYER_ACTOR with_offset 0.0 -2.5 0.0 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP_FX8" to_actor $PLAYER_ACTOR with_offset 0.0 2.5 0.0 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP_FX8" to_actor $PLAYER_ACTOR with_offset 0.0 7.5 0.0 type 1 
064F: remove_references_to_particle 0@ 
jump @SUKUNA_23702 

:SUKUNA_23114
  29@ > 0 
   not 29@ == 2 
jf @SUKUNA_23700 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -3.0 4.0 -0.3 
if 
06BD:   no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 1 car 1 actor 0 object 0 particle 0 
jf @SUKUNA_23278 
067E: put_camera_on_actor $PLAYER_ACTOR offset -2.0 3.5 1.0 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
29@ = 2 
jump @SUKUNA_23700 

:SUKUNA_23278
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 3.0 5.0 -0.3 
if 
06BD:   no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 1 car 1 actor 0 object 0 particle 0 
jf @SUKUNA_23421 
067E: put_camera_on_actor $PLAYER_ACTOR offset 3.0 5.0 -0.3 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
29@ = 2 
jump @SUKUNA_23700 

:SUKUNA_23421
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -3.0 5.0 3.0 
if 
06BD:   no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 1 car 1 actor 0 object 0 particle 0 
jf @SUKUNA_23564 
067E: put_camera_on_actor $PLAYER_ACTOR offset -3.0 5.0 3.0 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
29@ = 2 
jump @SUKUNA_23700 

:SUKUNA_23564
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 3.0 5.0 3.0 
if 
06BD:   no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 1 car 1 actor 0 object 0 particle 0 
jf @SUKUNA_23700 
067E: put_camera_on_actor $PLAYER_ACTOR offset 3.0 5.0 3.0 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
29@ = 2 

:SUKUNA_23700
return 

:SUKUNA_23702
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset -1.0 0.0 0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset 1.0 0.0 0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset -0.5 0.0 -0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
066A: 0@ = attach_particle "DSH_FX1" to_actor $PLAYER_ACTOR with_offset 0.5 0.0 -0.4 rotation 0.0 90.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges 0.5 -3.0 
0208: 8@ = random_float_in_ranges -0.5 0.5 
0669: 0@ = attach_particle "DSH_FX2" to_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges 0.0 -2.5 
0208: 8@ = random_float_in_ranges -0.5 0.5 
0669: 0@ = attach_particle "DSH_FX3" to_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_24754 
wait 0 
gosub @SUKUNA_45759 
  29@ == 0 
gosub_if_false @SUKUNA_23114 
0393: actor $PLAYER_ACTOR perform_animation "CLV_DSH01" at 1.5 times_normal_rate 
0613: 25@ = actor $PLAYER_ACTOR animation "CLV_DSH01" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "CLV_DSH01"
  25@ >= 0.35 
jf @SUKUNA_23702 
fade 0 time 500 
  29@ == 0 
gosub_if_false @SUKUNA_23114 

:SUKUNA_24204
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges 0.5 -3.0 
0208: 8@ = random_float_in_ranges -0.5 0.5 
0669: 0@ = attach_particle "DSH_FX2" to_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -2.0 2.0 
0208: 7@ = random_float_in_ranges 0.0 -2.5 
0208: 8@ = random_float_in_ranges -0.5 0.5 
0669: 0@ = attach_particle "DSH_FX3" to_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_24754 
wait 0 
gosub @SUKUNA_45759 
  29@ == 0 
gosub_if_false @SUKUNA_23114 
0613: 25@ = actor $PLAYER_ACTOR animation "CLV_DSH01" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "CLV_DSH01"
  25@ >= 0.46 
jf @SUKUNA_24204 
fade 1 time 300 
   not 29@ > 0 
jf @SUKUNA_24471 
Camera.Restore

:SUKUNA_24471
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 3.0 
02CE: 6@ = ground_z_at 4@ 5@ 6@ 
6@ += 0.1 
0613: 1@ = actor $PLAYER_ACTOR animation "CLV_DSH01" time 
Actor.PutAt($PLAYER_ACTOR, 4@, 5@, 6@)
0812: AS_actor $PLAYER_ACTOR perform_animation "CLV_DSH01" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait -1 
0614: set_actor $PLAYER_ACTOR animation "CLV_DSH01" progress_to 1@ // 0.0 to 1.0 
$CLV = 0 
$SMK = 3 

:SUKUNA_24633
gosub @SUKUNA_8731 
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "CLV_DSH01" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "CLV_DSH01"
  25@ >= 0.8 
jf @SUKUNA_24633 
Camera.Shake(100)
wait 600 
  29@ > 0 
jf @SUKUNA_24725 
Camera.Restore_WithJumpCut

:SUKUNA_24725
0687: clear_actor $PLAYER_ACTOR task 
04EF: release_animation "SUKUNA" 
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_24754
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -0.5 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 2.5 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset -1.0 2.5 -0.2 
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 1.0 2.5 -0.2 
if or
86BD:   not no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 0 car 1 actor 0 object 0 particle 0 
86BD:   not no_obstacles_between 1@ 2@ 3@ and 7@ 8@ 9@ solid 0 car 1 actor 0 object 0 particle 0 
86BD:   not no_obstacles_between 1@ 2@ 3@ and 11@ 12@ 13@ solid 0 car 1 actor 0 object 0 particle 0 
jf @SUKUNA_25106 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -0.5 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 4.0 0.0 
if 
06BD:   no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 1 car 0 actor 0 object 0 particle 0 
jf @SUKUNA_26200 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 7.0 3.0 
jump @SUKUNA_25352 

:SUKUNA_25106
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 2.5 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.5 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset -1.5 0.5 0.0 
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 1.5 0.5 0.0 
if or
86BD:   not no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 0 car 0 actor 1 object 0 particle 0 
86BD:   not no_obstacles_between 1@ 2@ 3@ and 7@ 8@ 9@ solid 0 car 0 actor 1 object 0 particle 0 
86BD:   not no_obstacles_between 1@ 2@ 3@ and 11@ 12@ 13@ solid 0 car 0 actor 1 object 0 particle 0 
jf @SUKUNA_26200 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 3.5 3.0 

:SUKUNA_25352
02CE: 6@ = ground_z_at 4@ 5@ 6@ 
6@ += 0.1 
0613: 1@ = actor $PLAYER_ACTOR animation "CLV_DSH01" time 
Actor.PutAt($PLAYER_ACTOR, 4@, 5@, 6@)
0812: AS_actor $PLAYER_ACTOR perform_animation "CLV_DSH01" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait -1 
0614: set_actor $PLAYER_ACTOR animation "CLV_DSH01" progress_to 1@ // 0.0 to 1.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 1.5 0.5 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 1.5 -7.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 -7.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -1.5 0.5 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset -1.5 -7.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 1.5 0.5 -0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 1.5 -7.0 -0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 -7.0 -0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -1.5 0.5 -0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset -1.5 -7.0 -0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 2.0 0.5 0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 2.0 -7.0 0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 -7.0 0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -2.0 0.5 0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset -2.0 -7.0 0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 

:SUKUNA_26200
return 

:SUKUNA_26202
if 
is_key_pressed 52 
jf @SUKUNA_27717 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_762 
Model.Load(3065)
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if and
   Model.Available(3065)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_762 
if 
   not Actor.Driving(31@)
jf @SUKUNA_762 
gosub @SUKUNA_57083 
$CLV = 4 
0792: disembark_instantly_actor $PLAYER_ACTOR 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "TELEP" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0169: set_fade_color_RGB 255 255 255 
fade 0 time 500 
wait 100 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 0@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0638: AS_actor 31@ stay_put 1 
02A3: enable_widescreen 1 
wait 50 
0619: enable_actor 31@ collision_detection 0 
wait 0 
10@ = Actor.Angle(31@)
10@ += 180.0 
Actor.Angle($PLAYER_ACTOR) = 10@
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.5 0.75 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
Actor.PutAt($PLAYER_ACTOR, 1@, 2@, 3@)
0209: 10@ = random_int_in_ranges 0 3 
if 
  10@ == 1 
jf @SUKUNA_26778 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset -1.0 -1.5 0.5 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
jump @SUKUNA_26997 

:SUKUNA_26778
if 
  10@ == 2 
jf @SUKUNA_26900 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset -1.5 1.5 -0.2 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
jump @SUKUNA_26997 

:SUKUNA_26900
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset -1.3 0.0 0.5 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)

:SUKUNA_26997
0169: set_fade_color_RGB 255 255 255 
fade 1 time 35 
write_int_to_ini_file 11 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 0@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor $PLAYER_ACTOR perform_animation "FSLAM_1" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
write_memory 15@ size 4 value 16@ virtual_protect 0 
0687: clear_actor 31@ task 
0792: disembark_instantly_actor 31@ 
0829: actor 31@ perform_animation "FSLAM_2" IFP_file "SUKUNA" 100.0 time -1 and_dies 
015D: set_gamespeed 0.04 
wait 50 
015D: set_gamespeed 1.0 
02A3: enable_widescreen 0 
Camera.Restore_WithJumpCut
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -100.0 
Object.Create(10@, 3065, 1@, 2@, 3@)
069B: attach_object 10@ to_actor $PLAYER_ACTOR with_offset 0.0 0.0 -100.0 rotation 0.0 0.0 0.0 
04F4: put_actor 31@ into_turret_on_object 10@ offset_from_object_origin 0.5 0.0 100.0 orientation 0 both_side_angle_limit 360.0 lock_weapon 0 

:SUKUNA_27338
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FSLAM_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FSLAM_1"
  25@ >= 0.291 
jf @SUKUNA_27338 
Camera.Shake(400)
$SMK = 2 
gosub @SUKUNA_8731 
0922: set_camera_zoom_from 50.0 to 100.0 timelimit 700 smooth_transition 1 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 -0.9 
064B: 0@ = create_particle "G_STOMP_FX1" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 -0.9 
064B: 0@ = create_particle "SLAM_0" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 -0.8 
064B: 15@ = create_particle "BOOM_03" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
gosub @SUKUNA_45759 

:SUKUNA_27617
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FSLAM_1" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FSLAM_1"
  25@ >= 0.9 
jf @SUKUNA_27617 
$CLV = 0 
0465: remove_actor 31@ from_turret_mode 
Actor.RemoveReferences(31@)
Object.Destroy(10@)
Model.Destroy(3065)
04EF: release_animation "SUKUNA" 
jump @SUKUNA_762 

:SUKUNA_27717
if 
is_key_pressed 51 
jf @SUKUNA_31076 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_762 
Model.Load(1598)
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if and
   Model.Available(1598)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_762 
if 
   not Actor.Driving(31@)
jf @SUKUNA_762 
gosub @SUKUNA_56093 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0792: disembark_instantly_actor $PLAYER_ACTOR 
0792: disembark_instantly_actor $PLAYER_ACTOR 
0812: AS_actor $PLAYER_ACTOR perform_animation "TELEP" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0169: set_fade_color_RGB 255 255 255 
fade 0 time 400 
wait 100 
write_int_to_ini_file 15 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 3.0 0.5 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
wait 200 
0169: set_fade_color_RGB 255 255 255 
fade 1 time 100 
write_memory 15@ size 4 value 16@ virtual_protect 0 
0792: disembark_instantly_actor 31@ 
0812: AS_actor 31@ perform_animation "FUKUMA_00" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
0619: enable_actor 31@ collision_detection 0 
10@ = Actor.Angle(31@)
10@ += 180.0 
Actor.Angle($PLAYER_ACTOR) = 10@
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset -0.5 -0.4 0.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
Actor.PutAt($PLAYER_ACTOR, 1@, 2@, 3@)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 0@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor $PLAYER_ACTOR perform_animation "S_THROW" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 0 
0612: set_actor $PLAYER_ACTOR animation "S_THROW" paused 0 
24@ = Audiostream.Load("CLEO\SOUND\STHROW_0.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
wait 1000 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset -1.5 -0.2 0.5 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -0.2 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
wait 1200 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -100.0 
Object.Create(20@, 1598, 1@, 2@, 3@)
070A: AS_actor $PLAYER_ACTOR attach_to_object 20@ offset 0.0 0.0 100.0 on_bone 5 16 perform_animation "NULL" IFP_file "NULL" time -1 
wait 0 
0812: AS_actor 31@ perform_animation "FALL_FALL" IFP "PED" framedelta 4.0 loopA 1 lockX 1 lockY 1 lockF 0 time -1 // versionB 
04F4: put_actor 31@ into_turret_on_object 20@ offset_from_object_origin 0.0 0.2 -100.0 orientation 0.0 both_side_angle_limit 0.0 lock_weapon 0 
Audiostream.Release(24@)
24@ = Audiostream.Load("CLEO\SOUND\STHROW_1.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
0612: set_actor $PLAYER_ACTOR animation "S_THROW" paused 1 
067E: put_camera_on_actor $PLAYER_ACTOR offset -3.0 3.0 -0.3 target_actor 31@ tilt 0.0 switchstyle 2 

:SUKUNA_28806
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "S_THROW" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "S_THROW"
  25@ >= 0.7 
jf @SUKUNA_28806 
Camera.Shake(100)
0465: remove_actor 31@ from_turret_mode 
0682: detach_object 20@ 0.0 0.0 0.0 collision_detection 0 
Object.Destroy(20@)
Model.Destroy(1598)
10@ = Actor.Angle($PLAYER_ACTOR)
10@ += 90.0 
Actor.Angle(31@) = 10@
0669: 0@ = attach_particle "IMP_FX1" to_actor 31@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
wait 0 
0619: enable_actor 31@ collision_detection 1 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 5.5 0.0 3.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 7.0 
5@ *= 7.0 
6@ *= 7.0 
Actor.StorePos(31@, 7@, 8@, 9@)
08C7: put_actor 31@ at 7@ 8@ 9@ dont_warp_gang 
083C: set_actor 31@ velocity_in_direction_XYZ 4@ 5@ 6@ 
0792: disembark_instantly_actor 31@ 
0829: actor 31@ perform_animation "FALL_BACK" IFP_file "PED" 10.0 time -1 and_dies 
wait 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 31@ with_offset 0.0 0.0 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor 31@ with_offset 2.0 -7.0 -0.5 
if 
86BD:   not no_obstacles_between 4@ 5@ 6@ and 7@ 8@ 9@ solid 1 car 0 actor 1 object 1 particle 0 
jf @SUKUNA_29299 
0792: disembark_instantly_actor 31@ 
05BE: AS_actor 31@ die 
Actor.RemoveReferences(31@)
Camera.Restore
0687: clear_actor $PLAYER_ACTOR task 
jump @SUKUNA_31052 

:SUKUNA_29299
Camera.Restore_WithJumpCut
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
80FE:   not actor 31@ sphere 0 in_sphere 4@ 5@ 6@ radius 10.0 10.0 100.0 
jf @SUKUNA_29389 
7@ = -7.0 
jump @SUKUNA_29399 

:SUKUNA_29389
7@ = 0.0 

:SUKUNA_29399
04C4: store_coords_to 4@ 5@ 6@ from_actor 31@ with_offset 2.0 7@ -0.5 
08C7: put_actor $PLAYER_ACTOR at 4@ 5@ 6@ dont_warp_gang 
10@ = Actor.Angle(31@)
10@ += 90.0 
Actor.Angle($PLAYER_ACTOR) = 10@
Actor.LockInCurrentPosition($PLAYER_ACTOR, True)
067E: put_camera_on_actor $PLAYER_ACTOR offset 2.0 -3.0 0.0 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
wait 200 
write_memory 15@ size 4 value 16@ virtual_protect 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 29@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 29@ 
write_int_to_ini_file 15 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0812: AS_actor $PLAYER_ACTOR perform_animation "S_FIGHTB_2" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 

:SUKUNA_29698
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "S_FIGHTB_2" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "S_FIGHTB_2"
  25@ >= 0.315 
jf @SUKUNA_29698 
067E: put_camera_on_actor $PLAYER_ACTOR offset 2.0 -3.0 0.0 target_actor 31@ tilt 0.0 switchstyle 2 
write_int_to_ini_file 14 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
Camera.Shake(240)
0669: 0@ = attach_particle "IMP_FX4" to_actor 31@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
05C1: AS_actor 31@ speak_from_audio_table 346 
09F1: play_audio_at_actor $PLAYER_ACTOR event 1136 
10@ = Actor.Angle($PLAYER_ACTOR)
Actor.Angle(31@) = 10@
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 15.0 7.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 7.0 
5@ *= 7.0 
6@ *= 7.0 
Actor.StorePos(31@, 7@, 8@, 9@)
08C7: put_actor 31@ at 7@ 8@ 9@ dont_warp_gang 
083C: set_actor 31@ velocity_in_direction_XYZ 4@ 5@ 6@ 
0792: disembark_instantly_actor 31@ 
0829: actor 31@ perform_animation "KO_SPIN_L" IFP_file "PED" 100.0 time -1 and_dies 
wait 500 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
083C: set_actor $PLAYER_ACTOR velocity_in_direction_XYZ 0.0 0.0 5.0 
wait 200 
Actor.LockInCurrentPosition($PLAYER_ACTOR, False)
Camera.Restore_WithJumpCut
04C4: store_coords_to 4@ 5@ 6@ from_actor 31@ with_offset 0.0 0.0 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor 31@ with_offset 0.0 12.0 -2.0 
if 
86BD:   not no_obstacles_between 4@ 5@ 6@ and 7@ 8@ 9@ solid 1 car 0 actor 1 object 1 particle 0 
jf @SUKUNA_30313 
write_memory 15@ size 4 value 16@ virtual_protect 0 
0792: disembark_instantly_actor 31@ 
05BE: AS_actor 31@ die 
Actor.RemoveReferences(31@)
Camera.Restore
0687: clear_actor $PLAYER_ACTOR task 
jump @SUKUNA_31052 

:SUKUNA_30313
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
80FE:   not actor 31@ sphere 0 in_sphere 4@ 5@ 6@ radius 30.0 30.0 100.0 
jf @SUKUNA_30401 
7@ = 12.0 
jump @SUKUNA_30411 

:SUKUNA_30401
7@ = 0.0 

:SUKUNA_30411
04C4: store_coords_to 4@ 5@ 6@ from_actor 31@ with_offset 0.0 7@ -2.0 
08C7: put_actor $PLAYER_ACTOR at 4@ 5@ 6@ dont_warp_gang 
10@ = Actor.Angle(31@)
10@ += 180.0 
Actor.Angle($PLAYER_ACTOR) = 10@
write_memory 15@ size 4 value 16@ virtual_protect 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
064B: 29@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 29@ 
write_int_to_ini_file 15 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
083C: set_actor $PLAYER_ACTOR velocity_in_direction_XYZ 0.0 0.0 5.0 
0812: AS_actor $PLAYER_ACTOR perform_animation "S_FIGHTB_3" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 

:SUKUNA_30646
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "S_FIGHTB_3" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "S_FIGHTB_3"
  25@ >= 0.55 
jf @SUKUNA_30646 
0669: 0@ = attach_particle "IMP_FX4" to_actor 31@ with_offset 0.0 0.0 -0.5 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "G_IMP_FX7" to_actor 31@ with_offset 0.0 0.0 -1.0 type 1 
064F: remove_references_to_particle 0@ 
write_int_to_ini_file 14 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 

:SUKUNA_30827
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "S_FIGHTB_3" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "S_FIGHTB_3"
  25@ >= 0.589 
jf @SUKUNA_30827 
083C: set_actor $PLAYER_ACTOR velocity_in_direction_XYZ 0.0 0.0 5.0 
Camera.Shake(250)
05C1: AS_actor 31@ speak_from_audio_table 346 
09F1: play_audio_at_actor $PLAYER_ACTOR event 1136 
04C4: store_coords_to 1@ 2@ 3@ from_actor 31@ with_offset 0.0 0.0 0.0 
083C: set_actor 31@ velocity_in_direction_XYZ 0.0 0.0 -50.0 
0792: disembark_instantly_actor 31@ 
0829: actor 31@ perform_animation "KO_SKID_FRONT" IFP_file "PED" 100.0 time -1 and_dies 
015D: set_gamespeed 0.1 
wait 100 
015D: set_gamespeed 1.0 
Actor.LockInCurrentPosition($PLAYER_ACTOR, False)
wait 0 
Camera.Restore
Audiostream.Release(24@)

:SUKUNA_31052
04EF: release_animation "SUKUNA" 
jump @SUKUNA_762 
jump @SUKUNA_762 

:SUKUNA_31076
if 
is_key_pressed 71 
jf @SUKUNA_31897 
if 
80E1:   not player 0 pressed_key 16 
jf @SUKUNA_19763 
04ED: load_animation "SUKUNA" 
Model.Load(3104)
038B: load_requested_models 
if and
04EE:   animation "SUKUNA" loaded 
   Model.Available(3104)
jf @SUKUNA_762 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "GSTOMP" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 

:SUKUNA_31202
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "GSTOMP" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "GSTOMP"
  25@ >= 0.625 
jf @SUKUNA_31202 
Camera.Shake(400)
write_int_to_ini_file 13 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0922: set_camera_zoom_from 50.0 to 100.0 timelimit 700 smooth_transition 1 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.9 
064B: 0@ = create_particle "G_STOMP_FX1" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.9 
064B: 0@ = create_particle "SLAM_0" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 -0.8 
064B: 15@ = create_particle "BOOM_03" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 15@ 
020C: create_explosion_with_radius 8 at 1@ 2@ 3@ 
wait 500 
0687: clear_actor $PLAYER_ACTOR task 
$CLV = 0 
04EF: release_animation "SUKUNA" 
Model.Destroy(3104)
Audiostream.Release(24@)
jump @SUKUNA_762 

:SUKUNA_31554
if or
   Actor.Animation($PLAYER_ACTOR) == "FALL_FALL"
   Actor.Animation($PLAYER_ACTOR) == "FALL_FRONT"
   Actor.Animation($PLAYER_ACTOR) == "FALL_BACK"
jf @SUKUNA_31895 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
04ED: load_animation "SUKUNA" 
if 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_31895 
0812: AS_actor $PLAYER_ACTOR perform_animation "SKN_FALL" IFP "SUKUNA" framedelta 4.0 loopA 1 lockX 1 lockY 1 lockF 1 time -1 // versionB 

:SUKUNA_31698
wait 0 
if 
   not Actor.Dead($PLAYER_ACTOR)
jf @SUKUNA_31880 
if 
84AD:   not actor $PLAYER_ACTOR in_water 
jf @SUKUNA_31880 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -1.5 
if 
86BD:   not no_obstacles_between 1@ 2@ 3@ and 4@ 5@ 6@ solid 1 car 1 actor 0 object 1 particle 0 
jf @SUKUNA_31698 
0812: AS_actor $PLAYER_ACTOR perform_animation "SKN_LAND" IFP "SUKUNA" framedelta 10.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
Camera.Shake(100)
wait 400 

:SUKUNA_31880
0687: clear_actor $PLAYER_ACTOR task 
04EF: release_animation "SUKUNA" 

:SUKUNA_31895
return 

:SUKUNA_31897
if 
is_key_pressed 190 
jf @SUKUNA_32173 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_762 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if 
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "S_LAUGH" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
write_int_to_ini_file 10 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 

:SUKUNA_32086
Camera.Shake(10)
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "S_LAUGH" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "S_LAUGH"
  25@ >= 0.99 
jf @SUKUNA_32086 
wait 500 
0687: clear_actor $PLAYER_ACTOR task 
04EF: release_animation "SUKUNA" 
jump @SUKUNA_762 

:SUKUNA_32173
if 
is_key_pressed 89 
jf @SUKUNA_38963 
if 
   not is_key_pressed 18 
jf @SUKUNA_38963 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_762 
gosub @SUKUNA_56243 
if 
056D:   actor 31@ defined 
jf @SUKUNA_762 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if and
80FE:   not actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.0 2.0 2.0 
00FE:   actor 31@ sphere 0 in_sphere 1@ 2@ 3@ radius 10.0 10.0 10.0 
jf @SUKUNA_762 
if 
   not Actor.Driving(31@)
jf @SUKUNA_762 
gosub @SUKUNA_57083 
$CLV = 7 
0687: clear_actor $PLAYER_ACTOR task 
wait 0 
02A3: enable_widescreen 1 
0826: enable_hud 0 
0581: enable_radar 0 
0792: disembark_instantly_actor 31@ 
02A9: set_actor 31@ immune_to_nonplayer 1 
gosub @SUKUNA_56093 
04C4: store_coords_to 14@ 15@ 16@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.2 
04C4: store_coords_to 17@ 18@ 19@ from_actor 31@ with_offset 0.0 0.0 -0.2 
050A: 20@ = distance_between_XYZ 17@ 18@ 19@ and_XYZ 14@ 15@ 16@ 
0063: 14@ -= 17@ // (float) 
0063: 15@ -= 18@ // (float) 
0063: 16@ -= 19@ // (float) 
0073: 14@ /= 20@ // (float) 
0073: 15@ /= 20@ // (float) 
0073: 16@ /= 20@ // (float) 
0604: get_Z_angle_for_point 14@ 15@ store_to 30@ 
Actor.Angle(31@) = 30@
0812: AS_actor 31@ perform_animation "IDLE_HBHB" IFP "PED" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
30@ = 0 
29@ = 0 
0085: $7002(30@,128i) = 31@ // (int) 
Actor.StorePos(31@, 1@, 2@, 3@)
0087: $AGLX(30@,128f) = 1@ // (float) 
0087: $AGLY(30@,128f) = 2@ // (float) 
0087: $AGLZ(30@,128f) = 3@ // (float) 
Actor.StorePos($PLAYER_ACTOR, 1@, 2@, 3@)
Actor.StorePos(31@, 4@, 5@, 6@)
0063: 1@ -= 4@ // (float) 
0087: $ANGELX(30@,128f) = 1@ // (float) 
0063: 2@ -= 5@ // (float) 
0087: $ANGELY(30@,128f) = 2@ // (float) 
wait 0 
04ED: load_animation "SUKUNA" 
Model.Load(3226)
Model.Load(3227)
Model.Load(3228)
038B: load_requested_models 
if and
04EE:   animation "SUKUNA" loaded 
   Model.Available(3226)
   Model.Available(3227)
   Model.Available(3228)
jf @SUKUNA_762 
0812: AS_actor $PLAYER_ACTOR perform_animation "FUKUMA" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 

:SUKUNA_32878
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FUKUMA" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FUKUMA"
  25@ >= 0.99 
jf @SUKUNA_32878 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.5 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
03E0: draw_text_behind_textures 1 
033F: set_text_draw_letter_size 0.5 2.0 
0349: set_text_draw_font 1 
0342: set_text_draw_centered 1 
0340: set_text_draw_RGBA 255 255 255 255 
033E: set_draw_text_position 320.0 380.0 GXT 'MS_1' 
TIMERA = 0 
04F9: set_sky_color 16 fade 1 
24@ = Audiostream.Load("CLEO\SOUND\FUKUMA_01.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)

:SUKUNA_33139
wait 0 
  TIMERA > 2150 
jf @SUKUNA_33139 
03F0: enable_text_draw 0 
0169: set_fade_color_RGB 0 0 0 
fade 0 time 200 
wait 173 
Actor.StorePos($PLAYER_ACTOR, $X, $Y, $Z)
30@ += 1 
29@ += 1 
gosub @SUKUNA_45759 
00BF: 27@ = current_time_hours, 28@ = current_time_minutes 
00C0: set_current_time_hours_to 20 minutes_to 28@ 
read_memory 26@ = read_memory 13112096 size 4 virtual_protect 0 
set_weather 9 
Object.Create(22@, 3228, 0.0, 0.0, 500.0)
Object.Create(20@, 3226, 0.0, 0.0, 500.0)
Object.Create(21@, 3227, 0.0, 0.0, 500.0)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(22@) = 10@
Object.Angle(20@) = 10@
Object.Angle(21@) = 10@
Object.StorePos(20@, 1@, 2@, 3@)
Object.PutAt(20@, 1@, 2@, 3@)
Object.PutAt(21@, 1@, 2@, 3@)
Object.PutAt(22@, 1@, 2@, 3@)
wait 0 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 0.0 5.0 -1.5 
0395: clear_area 1 at 1@ 2@ 3@ radius 100.0 
08C7: put_actor $PLAYER_ACTOR at 1@ 2@ 3@ dont_warp_gang 
0812: AS_actor $PLAYER_ACTOR perform_animation "FUKUMA_L" IFP "SUKUNA" framedelta 100.0 loopA 1 lockX 1 lockY 1 lockF 0 time -1 // versionB 
30@ = 0 

:SUKUNA_33517
if 
001D:   29@ > 30@ // (int) 
jf @SUKUNA_33693 
if 
056D:   actor $7002(30@,128i) defined 
jf @SUKUNA_33679 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -2.0 
0063: 1@ -= $ANGELX(30@,128f) // (float) 
0063: 2@ -= $ANGELY(30@,128f) // (float) 
Actor.PutAt($7002(30@,128i), 1@, 2@, 3@)
0792: disembark_instantly_actor $7002(30@,128i) 
0605: actor $7002(30@,128i) perform_animation "FUKUMA_00" IFP "SUKUNA" framedelta 100.0 loop 1 lockX 0 lockY 0 lockF 1 time -1 

:SUKUNA_33679
30@ += 1 
jump @SUKUNA_33517 

:SUKUNA_33693
30@ = 0 
10@ = Actor.Angle($PLAYER_ACTOR)
10@ += 180.0 
Actor.Angle($7002(30@,128i)) = 10@
wait 0 
02A3: enable_widescreen 0 
0390: load_txd_dictionary "SUKUNA" 
038F: load_texture "MS1" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS2" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS3" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS4" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS5" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS6" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS7" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS8" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS9" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS10" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS11" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS12" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS13" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS14" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS15" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS16" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS17" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS18" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS19" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS20" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS21" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS22" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS23" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS24" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS25" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS26" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 100 
038F: load_texture "MS27" as 1 // Load dictionary with 0390 first 
038D: draw_texture 1 position 320.0 200.0 size 1050.0 500.0 RGBA 255 255 255 255 
wait 0 
03F0: enable_text_draw 0 
wait 0 
0391: release_textures 
fade 1 time 1000 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 5.0 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 5.0 
Camera.PointAt(1@, 2@, 3@, 2)
wait 800 
TIMERA = 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 5.0 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.5 
0936: set_camera 1@ 2@ 3@ position_to 4@ 5@ 6@ time 900 smooth_transition 1 
0930: lock_camera_position 1 

:SUKUNA_35302
wait 0 
  TIMERA > 1300 
jf @SUKUNA_35302 
03E0: draw_text_behind_textures 1 
033F: set_text_draw_letter_size 0.5 2.0 
0349: set_text_draw_font 1 
0342: set_text_draw_centered 1 
0340: set_text_draw_RGBA 255 255 255 255 
033E: set_draw_text_position 320.0 380.0 GXT 'MS_2' 

:SUKUNA_35380
wait 0 
  TIMERA > 2500 
jf @SUKUNA_35380 
0930: lock_camera_position 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.5 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 25.0 -0.5 
0936: set_camera 1@ 2@ 3@ position_to 4@ 5@ 6@ time 500 smooth_transition 1 
0930: lock_camera_position 1 

:SUKUNA_35490
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 1.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 30.0 
wait 0 
  TIMERA > 3000 
jf @SUKUNA_35490 
03F0: enable_text_draw 0 

:SUKUNA_35565
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 1.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 30.0 
wait 0 
  TIMERA > 4800 
jf @SUKUNA_35565 
0930: lock_camera_position 0 
067E: put_camera_on_actor 31@ offset -2.5 1.0 0.0 target_actor 31@ tilt 0.0 switchstyle 2 

:SUKUNA_35670
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 1.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 30.0 
wait 0 
  TIMERA > 5850 
jf @SUKUNA_35670 
Model.Destroy(3226)
Model.Destroy(3227)
Model.Destroy(3228)
067E: put_camera_on_actor $PLAYER_ACTOR offset 2.0 1.5 -0.3 target_actor $PLAYER_ACTOR tilt 0.0 switchstyle 2 

:SUKUNA_35786
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 1.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 30.0 
wait 0 
  TIMERA > 8200 
jf @SUKUNA_35786 
0169: set_fade_color_RGB 255 210 210 
Audiostream.Release(24@)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 30.0 3.0 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -1.0 
Camera.PointAt(1@, 2@, 3@, 2)
24@ = Audiostream.Load("CLEO\SOUND\S_LAUGH.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
23@ = Audiostream.Load("CLEO\SOUND\SLASHES.MP3")
Audiostream.PerformAction(23@, AudioStreamState.Play)
Audiostream.Loop(23@, 1)
30@ = 0 

:SUKUNA_36056
if 
001D:   29@ > 30@ // (int) 
jf @SUKUNA_36165 
if 
056D:   actor $7002(30@,128i) defined 
jf @SUKUNA_36151 
05C1: AS_actor $7002(30@,128i) speak_from_audio_table 346 
0605: actor $7002(30@,128i) perform_animation "FUKUMA_IMP" IFP "SUKUNA" framedelta 100.0 loop 1 lockX 0 lockY 0 lockF 1 time -1 

:SUKUNA_36151
30@ += 1 
jump @SUKUNA_36056 

:SUKUNA_36165
TIMERB = 500 
30@ = 0 

:SUKUNA_36180
if 
001D:   29@ > 30@ // (int) 
jf @SUKUNA_36665 
if 
056D:   actor $7002(30@,128i) defined 
jf @SUKUNA_36651 
  TIMERB > 100 
jf @SUKUNA_36315 
0669: 0@ = attach_particle "IMP" to_actor $7002(30@,128i) with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP_FX2" to_actor $7002(30@,128i) with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 

:SUKUNA_36315
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -0.5 2.0 
0669: 0@ = attach_particle "HACHI_FX1" to_actor $7002(30@,128i) with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -0.5 2.0 
0669: 0@ = attach_particle "HACHI_FX2" to_actor $7002(30@,128i) with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -0.5 2.0 
0669: 0@ = attach_particle "HACHI_FX1" to_actor $7002(30@,128i) with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0208: 6@ = random_float_in_ranges -3.5 3.5 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -0.5 2.0 
0669: 0@ = attach_particle "HACHI_FX2" to_actor $7002(30@,128i) with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 

:SUKUNA_36651
30@ += 1 
jump @SUKUNA_36180 

:SUKUNA_36665
  TIMERB > 100 
jf @SUKUNA_36686 
TIMERB = 0 

:SUKUNA_36686
30@ = 0 
Camera.Shake(200)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 1.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 30.0 
wait 0 
  TIMERA > 13400 
jf @SUKUNA_36180 
fade 0 time 100 
  TIMERA > 13600 
jf @SUKUNA_36180 
wait 0 
Object.Destroy(20@)
Object.Destroy(21@)
Object.Destroy(22@)
04FA: reset_sky_colors_with_fade 0 
04E4: refresh_game_renderer_at $X $Y 
Camera.SetAtPos($X, $Y, $Z)
0812: AS_actor $PLAYER_ACTOR perform_animation "FUKUMA_L" IFP "SUKUNA" framedelta 100.0 loopA 1 lockX 1 lockY 1 lockF 0 time -1 // versionB 
Audiostream.Release(23@)
Audiostream.Release(24@)
24@ = Audiostream.Load("CLEO\SOUND\SLASHES_E.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
fade 1 time 500 
30@ = 0 

:SUKUNA_36932
if 
001D:   29@ > 30@ // (int) 
jf @SUKUNA_37101 
if 
056D:   actor $7002(30@,128i) defined 
jf @SUKUNA_37087 
02CE: 20@ = ground_z_at $AGLX(30@,128f) $AGLY(30@,128f) $AGLZ(30@,128f) 
20@ += 0.1 
Actor.PutAt($7002(30@,128i), $AGLX(30@,128f), $AGLY(30@,128f), 20@)
0605: actor $7002(30@,128i) perform_animation "FUKUMA_00" IFP "SUKUNA" framedelta 100.0 loop 1 lockX 0 lockY 0 lockF 1 time -1 
0332: set_actor $7002(30@,128i) bleeding 1 

:SUKUNA_37087
30@ += 1 
jump @SUKUNA_36932 

:SUKUNA_37101
02CE: $Z = ground_z_at $X $Y $Z 
$Z += 0.1 
Actor.PutAt($PLAYER_ACTOR, $X, $Y, $Z)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 30.0 5.0 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -1.0 
Camera.PointAt(1@, 2@, 3@, 2)
Camera.Shake(100)
00BF: 16@ = current_time_hours, 28@ = current_time_minutes 
set_weather 26@ 
00C0: set_current_time_hours_to 27@ minutes_to 28@ 
wait 1700 
Audiostream.Release(24@)
write_int_to_ini_file 16 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0169: set_fade_color_RGB 255 0 0 
fade 0 time 300 

:SUKUNA_37326
Model.Load(2905)
Model.Load(2906)
Model.Load(2907)
Model.Load(2908)
wait 0 
if and
   Model.Available(2905)
   Model.Available(2906)
   Model.Available(2907)
   Model.Available(2908)
jf @SUKUNA_37326 
30@ = 0 

:SUKUNA_37388
if 
001D:   29@ > 30@ // (int) 
jf @SUKUNA_38871 
if 
056D:   actor $7002(30@,128i) defined 
jf @SUKUNA_38857 
803A:   not  $7002(30@,128i) == $PLAYER_ACTOR // (int) 
jf @SUKUNA_38857 
write_int_to_ini_file 16 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0792: disembark_instantly_actor $7002(30@,128i) 
0332: set_actor $7002(30@,128i) bleeding 1 
Actor.StorePos($7002(30@,128i), 1@, 2@, 3@)
064B: 0@ = create_particle "BLOOD_HELI" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
Actor.Health($7002(30@,128i)) = 0
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
Object.Create(7@, 2905, 4@, 5@, 6@)
069B: attach_object 7@ to_actor $7002(30@,128i) with_offset 0.13 0.0 -0.5 rotation 270.0 90.0 0.0 
Object.Create(8@, 2905, 4@, 5@, 6@)
069B: attach_object 8@ to_actor $7002(30@,128i) with_offset -0.07 0.0 -0.5 rotation 270.0 90.0 0.0 
Object.Create(9@, 2906, 4@, 5@, 6@)
069B: attach_object 9@ to_actor $7002(30@,128i) with_offset 0.5 0.0 0.4 rotation 0.0 270.0 270.0 
Object.Create(10@, 2906, 4@, 5@, 6@)
069B: attach_object 10@ to_actor $7002(30@,128i) with_offset -0.5 0.0 0.4 rotation 0.0 270.0 90.0 
Object.Create(11@, 2907, 4@, 5@, 6@)
069B: attach_object 11@ to_actor $7002(30@,128i) with_offset 0.0 0.0 0.1 rotation 270.0 0.0 0.0 
Object.Create(12@, 2908, 4@, 5@, 6@)
069B: attach_object 12@ to_actor $7002(30@,128i) with_offset 0.03 0.05 0.7 rotation 270.0 90.0 0.0 
Object.ToggleInMovingList(12@, True)
0682: detach_object 7@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 7@ mass_to 10.0 // float 
0908: set_object 7@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(7@, True)
04D9: object 7@ set_scripted_collision_check 1 
20@ = Object.Angle(7@)
20@ += 270.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 5.0 
3@ *= 5.0 
2@ *= 1.0 
Object.Throw(7@, 2@, 3@, 0.0)
0682: detach_object 8@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 8@ mass_to 10.0 // float 
0908: set_object 8@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(8@, True)
04D9: object 8@ set_scripted_collision_check 1 
20@ = Object.Angle(8@)
20@ = 90.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 5.0 
3@ *= 5.0 
2@ *= 1.0 
Object.Throw(8@, 2@, 3@, 0.0)
0682: detach_object 9@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 9@ mass_to 10.0 // float 
0908: set_object 9@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(9@, True)
04D9: object 9@ set_scripted_collision_check 1 
20@ = Object.Angle(9@)
20@ += 90.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= -5.0 
3@ *= -5.0 
2@ *= -1.0 
Object.Throw(9@, 2@, 3@, 5.0)
05A2: set_object 9@ rotation_velocity_about_an_axis 30.0 0.0 0.0 through_center_of_mass 
0682: detach_object 10@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 10@ mass_to 10.0 // float 
0908: set_object 10@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(10@, True)
04D9: object 10@ set_scripted_collision_check 1 
20@ = Object.Angle(10@)
20@ += 270.0 
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 5.0 
3@ *= 5.0 
2@ *= -1.0 
Object.Throw(10@, 2@, 3@, 5.0)
05A2: set_object 10@ rotation_velocity_about_an_axis 30.0 0 0.0 through_center_of_mass 
0682: detach_object 11@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 11@ mass_to 10.0 // float 
0908: set_object 11@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(11@, True)
04D9: object 11@ set_scripted_collision_check 1 
20@ = Object.Angle(11@)
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= 5.0 
3@ *= 5.0 
2@ *= -1.0 
Object.Throw(11@, 2@, 3@, 0.0)
0682: detach_object 12@ 0.0 0.0 0.0 collision_detection 1 
0906: set_object 12@ mass_to 10.0 // float 
0908: set_object 12@ turn_mass_to 10.0 // float 
Object.ToggleInMovingList(12@, True)
04D9: object 12@ set_scripted_collision_check 1 
20@ = Object.Angle(12@)
02F6: 2@ = sine 20@ // (float) 
02F7: 3@ = cosine 20@ // (float) 
2@ *= -5.0 
3@ *= -5.0 
2@ *= -1.0 
Object.Throw(12@, 2@, 3@, 7.0)
05BE: AS_actor $7002(30@,128i) die 
0619: enable_actor $7002(30@,128i) collision_detection 0 
0337: set_actor $7002(30@,128i) visibility 0 
Actor.RemoveReferences($7002(30@,128i))
Object.RemoveReferences(7@)
Object.RemoveReferences(8@)
Object.RemoveReferences(9@)
Object.RemoveReferences(10@)
Object.RemoveReferences(11@)
Object.RemoveReferences(12@)
Camera.Shake(400)
31@ = 0 

:SUKUNA_38857
30@ += 1 
jump @SUKUNA_37388 

:SUKUNA_38871
wait 200 
0169: set_fade_color_RGB 255 0 0 
fade 1 time 500 
0687: clear_actor $PLAYER_ACTOR task 
wait 300 
$CLV = 0 
Camera.Restore
0826: enable_hud 1 
0581: enable_radar 1 
04EF: release_animation "SUKUNA" 
Model.Destroy(2905)
Model.Destroy(2906)
Model.Destroy(2907)
Model.Destroy(2908)
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_38963
if and
is_key_pressed 89 
is_key_pressed 18 
jf @SUKUNA_762 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 0 
jf @SUKUNA_762 
Model.Load(3226)
Model.Load(3227)
Model.Load(1598)
Model.Load(#MARQUIS)
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
if and
   Model.Available(3226)
   Model.Available(3227)
   Model.Available(1598)
   Model.Available(#MARQUIS)
04EE:   animation "SUKUNA" loaded 
jf @SUKUNA_762 
$CLV = 8 
0687: clear_actor $PLAYER_ACTOR task 
wait 0 
02A3: enable_widescreen 1 
0826: enable_hud 0 
0581: enable_radar 0 
Camera.Shake(300)
$SMK = 2 
gosub @SUKUNA_8731 
24@ = Audiostream.Load("CLEO\SOUND\FUKUMA2_01.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
Actor.LockInCurrentPosition($PLAYER_ACTOR, True)
Actor.SetImmunities($PLAYER_ACTOR, True, True, True, True, True)
0812: AS_actor $PLAYER_ACTOR perform_animation "FUKUMA" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 

:SUKUNA_39248
wait 0 
0613: 25@ = actor $PLAYER_ACTOR animation "FUKUMA" time 
if or
   not Actor.Animation($PLAYER_ACTOR) == "FUKUMA"
  25@ >= 0.99 
jf @SUKUNA_39248 
wait 500 
04F9: set_sky_color 2 fade 1 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 7.0 0.0 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
03E0: draw_text_behind_textures 1 
033F: set_text_draw_letter_size 0.5 2.0 
0349: set_text_draw_font 1 
0342: set_text_draw_centered 1 
0340: set_text_draw_RGBA 255 255 255 255 
033E: set_draw_text_position 320.0 380.0 GXT 'MS_1' 
TIMERA = 0 
Audiostream.Release(24@)
24@ = Audiostream.Load("CLEO\SOUND\FUKUMA2_02.MP3")
Audiostream.PerformAction(24@, AudioStreamState.Play)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -2.0 0.0 
064B: 0@ = create_particle "AUREA3" at 1@ 2@ 3@ type 1 
064C: make_particle 0@ visible 

:SUKUNA_39578
wait 0 
  TIMERA > 2500 
jf @SUKUNA_39578 
0169: set_fade_color_RGB 0 0 0 
fade 0 time 500 

:SUKUNA_39612
wait 0 
  TIMERA > 3500 
jf @SUKUNA_39612 
0976: destroy_particle 0@ 
03F0: enable_text_draw 0 
fade 1 time 1000 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.5 
Camera.SetPosition(1@, 2@, 3@, 0.0, 0.0, 0.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 0.0 0.5 0.7 
04C4: store_coords_to 14@ 15@ 16@ from_actor $PLAYER_ACTOR with_offset 0.0 10.0 -0.5 
0936: set_camera 11@ 12@ 13@ position_to 14@ 15@ 16@ time 7000 smooth_transition 1 
0930: lock_camera_position 1 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -5.0 0.0 
Object.Create(19@, 1598, 1@, 2@, 3@)
Object.SetImmunities(19@, True, True, True, True, True)
Object.CollisionDetection(19@, False)
Object.ToggleInMovingList(19@, False)
0750: set_object 19@ visibility 0 
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(19@) = 10@
TIMERA = 0 

:SUKUNA_39936
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -1.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 -5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset -5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
wait 0 
if 
  TIMERA > 500 
jf @SUKUNA_39936 
03E0: draw_text_behind_textures 1 
033F: set_text_draw_letter_size 0.5 2.0 
0349: set_text_draw_font 1 
0342: set_text_draw_centered 1 
0340: set_text_draw_RGBA 255 255 255 255 
033E: set_draw_text_position 320.0 380.0 GXT 'MS_2' 

:SUKUNA_40268
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -1.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 -5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset -5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 0.0 -1.2 
064B: 0@ = create_particle "AUREA4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
wait 0 
if 
  TIMERA > 1500 
jf @SUKUNA_40268 
03F0: enable_text_draw 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -4.2 -11.0 
Object.Create(20@, 3226, 1@, 2@, 3@)
Object.Create(21@, 3227, 1@, 2@, 3@)
10@ = Actor.Angle($PLAYER_ACTOR)
Object.Angle(20@) = 10@
Object.Angle(21@) = 10@
0400: store_coords_to 7@ 8@ 6@ from_object 20@ with_offset 0.0 0.0 10.0 
066D: 12@ = attach_particle "FUKUMA_FX0" to_object 21@ with_offset 0.0 0.0 -2.0 type 4 
064C: make_particle 12@ visible 

:SUKUNA_40761
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 -5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset -5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -1.0 0.5 
Camera.PointAt(1@, 2@, 3@, 2)
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 0.0 -1.2 
016F: create_particle 3 rotation_factor 90.0 size 20.0 intensity 90 flags 255 0 0 at 1@ 2@ 3@ 
064B: 0@ = create_particle "AUREA4" at 1@ 2@ 3@ type 4 
064F: remove_references_to_particle 0@ 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -3.5 3.5 
0208: 9@ = random_float_in_ranges -3.5 -2.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0208: 7@ = random_float_in_ranges -6.0 6.0 
0208: 8@ = random_float_in_ranges -6.0 6.0 
0208: 9@ = random_float_in_ranges -3.5 -2.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
066D: 10@ = attach_particle "AUREA2" to_object 21@ with_offset 7@ 8@ -1.0 type 1 
064F: remove_references_to_particle 10@ 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -3.5 3.5 
0208: 9@ = random_float_in_ranges -2.0 -1.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0208: 7@ = random_float_in_ranges -6.0 6.0 
0208: 8@ = random_float_in_ranges -6.0 6.0 
0208: 9@ = random_float_in_ranges -3.5 -2.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
Camera.Shake(100)
Object.StorePos(20@, 1@, 2@, 3@)
if 
0025:   6@ > 3@ // (float) 
jf @SUKUNA_41605 
wait 1 
3@ += 0.07 
Object.PutAt(20@, 1@, 2@, 3@)
Object.PutAt(21@, 1@, 2@, 3@)
jump @SUKUNA_40761 

:SUKUNA_41605
TIMERA = 0 

:SUKUNA_41612
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 -5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset -5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
wait 0 
if 
  TIMERA > 1500 
jf @SUKUNA_41612 
Camera.Restore_WithJumpCut
04FA: reset_sky_colors_with_fade 1 
02A3: enable_widescreen 0 
0826: enable_hud 1 
0581: enable_radar 1 
0930: lock_camera_position 0 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 0.0 0.0 0.0 
Car.Create(23@, #MARQUIS, 1@, 2@, 3@)
10@ = Actor.Angle($PLAYER_ACTOR)
Car.Angle(23@) = 10@
Car.SetImmunities(23@, True, True, True, True, True)
Car.LockInCurrentPosition(23@, True)
0338: set_car 23@ visibility 0 
081D: set_car 23@ engine_broken 0 
099A: set_car 23@ collision_detection 0 
0939: attach_car 23@ to_object 20@ with_offset 0.0 0.0 5.0 rotation 0.0 0.0 180.0 
Camera.OnVehicle(23@, 18, 1)
25@ = Audiostream.Load("CLEO\SOUND\SLASHES.MP3")
Audiostream.PerformAction(25@, AudioStreamState.Play)
Audiostream.Loop(25@, 1)

:SUKUNA_42060
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 -5.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset -5.0 0.0 0.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 50.0 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 0.0 0.0 0.0 
016F: create_particle 3 rotation_factor 90.0 size 20.0 intensity 90 flags 255 0 0 at 1@ 2@ 3@ 
Camera.Shake(400)
gosub @SUKUNA_45759 
gosub @SUKUNA_43130 
gosub @SUKUNA_43130 
gosub @SUKUNA_43130 
gosub @SUKUNA_43130 
gosub @SUKUNA_43130 
wait 0 
if 
is_key_pressed 89 
jf @SUKUNA_42060 
$CLV = 0 
Camera.Restore
04EF: release_animation "SUKUNA" 
Audiostream.Release(24@)
Audiostream.Release(25@)
0684: detach_car 23@ 20.0 180.0 0.0 collision_detection 0 
Car.Destroy(23@)
0650: destroy_particle 12@ 
0400: store_coords_to 7@ 8@ 6@ from_object 20@ with_offset 0.0 0.0 -7.0 

:SUKUNA_42485
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 1.0 
09E5: create_flash_light_at 1@ 2@ 3@ RGB_mask 255 126 126 radius 30.0 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -3.5 3.5 
0208: 9@ = random_float_in_ranges -3.5 -2.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 0.0 0.0 -1.2 
064B: 0@ = create_particle "AUREA4" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0208: 7@ = random_float_in_ranges -6.0 6.0 
0208: 8@ = random_float_in_ranges -6.0 6.0 
0208: 9@ = random_float_in_ranges -3.5 -2.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0208: 7@ = random_float_in_ranges -3.5 3.5 
0208: 8@ = random_float_in_ranges -3.5 3.5 
0208: 9@ = random_float_in_ranges -2.0 -1.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
0208: 7@ = random_float_in_ranges -6.0 6.0 
0208: 8@ = random_float_in_ranges -6.0 6.0 
0208: 9@ = random_float_in_ranges -3.5 -2.0 
0400: store_coords_to 1@ 2@ 3@ from_object 19@ with_offset 7@ 8@ 9@ 
064B: 0@ = create_particle "AUREA" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
Camera.Shake(100)
Object.StorePos(20@, 1@, 2@, 3@)
if 
0025:   3@ > 6@ // (float) 
jf @SUKUNA_43065 
wait 1 
3@ -= 0.07 
Object.PutAt(20@, 1@, 2@, 3@)
Object.PutAt(21@, 1@, 2@, 3@)
jump @SUKUNA_42485 

:SUKUNA_43065
Object.Destroy(19@)
Object.Destroy(20@)
Object.Destroy(21@)
Model.Destroy(1598)
Model.Destroy(3226)
Model.Destroy(3227)
Model.Destroy(#MARQUIS)
wait 0 
0687: clear_actor $PLAYER_ACTOR task 
Actor.LockInCurrentPosition($PLAYER_ACTOR, False)
gosub @SUKUNA_1313 
jump @SUKUNA_762 

:SUKUNA_43130
Camera.Shake(150)
0208: 6@ = random_float_in_ranges -50.0 50.0 
0208: 7@ = random_float_in_ranges -50.0 50.0 
0208: 8@ = random_float_in_ranges -1.0 50.0 
066D: 0@ = attach_particle "FUKUMA_FX1" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
0208: 6@ = random_float_in_ranges -50.0 50.0 
0208: 7@ = random_float_in_ranges -50.0 50.0 
0208: 8@ = random_float_in_ranges -1.0 50.0 
066D: 0@ = attach_particle "FUKUMA_FX2" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -5.0 0.0 
0208: 7@ = random_float_in_ranges -5.0 5.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
Camera.Shake(150)
0208: 6@ = random_float_in_ranges -100.0 100.0 
0208: 7@ = random_float_in_ranges -100.0 100.0 
0208: 8@ = random_float_in_ranges -1.0 100.0 
066D: 0@ = attach_particle "FUKUMA_FX1" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_44781 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
0208: 6@ = random_float_in_ranges -100.0 100.0 
0208: 7@ = random_float_in_ranges -100.0 100.0 
0208: 8@ = random_float_in_ranges -1.0 100.0 
066D: 0@ = attach_particle "FUKUMA_FX2" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
Camera.Shake(150)
0208: 6@ = random_float_in_ranges -150.0 150.0 
0208: 7@ = random_float_in_ranges -150.0 150.0 
0208: 8@ = random_float_in_ranges -1.0 150.0 
066D: 0@ = attach_particle "FUKUMA_FX1" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_44781 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
0208: 6@ = random_float_in_ranges -150.0 150.0 
0208: 7@ = random_float_in_ranges -150.0 150.0 
0208: 8@ = random_float_in_ranges -1.0 150.0 
066D: 0@ = attach_particle "FUKUMA_FX2" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
Camera.Shake(150)
0208: 6@ = random_float_in_ranges -200.0 200.0 
0208: 7@ = random_float_in_ranges -200.0 200.0 
0208: 8@ = random_float_in_ranges -1.0 200.0 
066D: 0@ = attach_particle "FUKUMA_FX1" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
gosub @SUKUNA_44781 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
0208: 6@ = random_float_in_ranges -200.0 200.0 
0208: 7@ = random_float_in_ranges -200.0 200.0 
0208: 8@ = random_float_in_ranges -1.0 200.0 
066D: 0@ = attach_particle "FUKUMA_FX2" to_object 20@ with_offset 6@ 7@ 8@ type 1 
064F: remove_references_to_particle 0@ 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 6@ 7@ -1.7 
0208: 6@ = random_float_in_ranges -10.0 10.0 
0208: 7@ = random_float_in_ranges -10.0 10.0 
0208: 8@ = random_float_in_ranges -1.0 5.0 
095C: create_smoke_at 1@ 2@ 3@ velocity 6@ 7@ 8@ RGBA 1.0 1.0 1.0 0.5 size 3.0 last_factor 0.2 
return 

:SUKUNA_44781
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 6@ 7@ 2.0 
02CE: 3@ = ground_z_at 1@ 2@ 3@ 
3@ += 0.2 
064B: 0@ = create_particle "FUKUMA_G_FX" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
return 

:SUKUNA_44866
wait 0 
if and
   Player.Defined($PLAYER_CHAR)
   not Actor.Driving($PLAYER_ACTOR)
   not Actor.Dead($PLAYER_ACTOR)
8965:   not actor $PLAYER_ACTOR swimming 
jf @SUKUNA_45539 
10@ = 0.0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 10@ 0.0 
if and
is_key_pressed 88 
is_key_pressed 49 
jf @SUKUNA_45076 
10@ = 15.0 
gosub @SUKUNA_45541 
gosub @SUKUNA_45706 
0792: disembark_instantly_actor $PLAYER_ACTOR 
0812: AS_actor $PLAYER_ACTOR perform_animation "TELEP" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 100 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
Camera.Restore_WithJumpCut
jump @SUKUNA_45214 

:SUKUNA_45076
if and
is_key_pressed 88 
is_key_pressed 50 
jf @SUKUNA_45539 
10@ = -15.0 
gosub @SUKUNA_45541 
gosub @SUKUNA_45706 
0792: disembark_instantly_actor $PLAYER_ACTOR 
0812: AS_actor $PLAYER_ACTOR perform_animation "TELEP" IFP "SUKUNA" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 100 
get_ped_pointer 14@ = ped $PLAYER_ACTOR 
0A8E: 15@ = 14@ + 1140 // int 
read_memory 16@ = read_memory 15@ size 4 virtual_protect 0 
write_memory 15@ size 4 value 2 virtual_protect 0 
Camera.Restore_WithJumpCut
jump @SUKUNA_45214 

:SUKUNA_45214
Camera.OnPed($PLAYER_ACTOR, 4, 1)
write_int_to_ini_file 12 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
Audiostream.PerformAction($TELE, AudioStreamState.Play)
09F1: play_audio_at_actor $PLAYER_ACTOR event 1136 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 10@ 300.0 
08C7: put_actor $PLAYER_ACTOR at 1@ 2@ 3@ dont_warp_gang 
0819: 12@ = actor $PLAYER_ACTOR distance_from_ground 
Actor.StorePos($PLAYER_ACTOR, 1@, 2@, 3@)
0063: 3@ -= 12@ // (float) 
08C7: put_actor $PLAYER_ACTOR at 1@ 2@ 3@ dont_warp_gang 
Actor.StorePos($PLAYER_ACTOR, 1@, 2@, 3@)
064B: 0@ = create_particle "BLITZ" at 1@ 2@ 3@ type 1 
064F: remove_references_to_particle 0@ 
wait 100 
04EF: release_animation "SUKUNA" 
write_memory 15@ size 4 value 16@ virtual_protect 0 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.8 
095C: create_smoke_at 1@ 2@ 3@ velocity 1.0 1.0 0.0 RGBA 1.0 1.0 1.0 0.5 size 0.2 last_factor 0.1 
10@ = 0.0 
wait 10 
Camera.Restore
wait 90 
Camera.Shake(100)

:SUKUNA_45539
return 

:SUKUNA_45541
04C4: store_coords_to 5@ 6@ 7@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
068D: get_camera_position_to 9@ 17@ 20@ 
0087: 20@ = 9@ // (float) 
0087: 31@ = 17@ // (float) 
0063: 20@ -= 5@ // (float) 
0063: 31@ -= 6@ // (float) 
20@ *= -2.0 
31@ *= -2.0 
005B: 9@ += 20@ // (float) 
005B: 17@ += 31@ // (float) 
0063: 9@ -= 5@ // (float) 
0063: 17@ -= 6@ // (float) 
9@ *= 5.0 
17@ *= 5.0 
0604: get_Z_angle_for_point 9@ 17@ store_to 31@ 
Actor.Angle($PLAYER_ACTOR) = 31@
return 

:SUKUNA_45706
if 
84EE:   not animation "SUKUNA" loaded 
jf @SUKUNA_45746 
04ED: load_animation "SUKUNA" 
038B: load_requested_models 
jump @SUKUNA_45748 

:SUKUNA_45746
return 

:SUKUNA_45748
wait 0 
jump @SUKUNA_45706 

:SUKUNA_45759
read_memory 26@ = read_memory 12010640 size 4 virtual_protect 0 
26@ += 4 
read_memory 26@ = read_memory 26@ size 4 virtual_protect 0 
27@ = 0 

:SUKUNA_45799
read_memory 28@ = read_memory 26@ size 1 virtual_protect 0 
26@ += 1 
if and
  28@ >= 0 
  128 > 28@ 
jf @SUKUNA_50586 
005A: 28@ += 27@ // (int) 
if 
803C:   not  $PLAYER_ACTOR == 28@ // (int) 
jf @SUKUNA_50586 
if 
  $CLV == 0 
jf @SUKUNA_46345 
if 
   not Actor.Animation($PLAYER_ACTOR) == "FUGA"
jf @SUKUNA_50507 
if 
   not Actor.Dead(28@)
jf @SUKUNA_50586 
if 
   not Actor.Driving(28@)
jf @SUKUNA_50586 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
if 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.5 2.5 2.0 
jf @SUKUNA_50586 
write_int_to_ini_file 20 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
09F1: play_audio_at_actor 28@ event 1189 
09F1: play_audio_at_actor 28@ event 1136 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.5 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor 28@ perform_animation "HIT_WALL" IFP "PED" framedelta 100.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
0614: set_actor 28@ animation "HIT_WALL" progress_to 0.0 // 0.0 to 1.0 
10@ = Actor.Health(28@)
10@ -= 25 
if 
  10@ > 10 
gosub_if_false @SUKUNA_46262 
Actor.Health(28@) = 10@
0687: clear_actor 28@ task 
05E2: AS_actor 28@ kill_actor $PLAYER_ACTOR 
jump @SUKUNA_50586 

:SUKUNA_46262
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.5 type 1 
064F: remove_references_to_particle 0@ 
0829: actor 28@ perform_animation "KO_SKID_FRONT" IFP_file "PED" 10.0 time -1 and_dies 
10@ = 0 
return 

:SUKUNA_46345
if 
  $CLV == 1 
jf @SUKUNA_46883 
if 
   not Actor.Dead(28@)
jf @SUKUNA_50586 
   not Actor.Driving(28@)
jf @SUKUNA_50586 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 0.0 
if or
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 7.5 3.0 5.0 
0179:   actor 28@ colliding_with_object 24@ 
jf @SUKUNA_50586 
if 
03CA:   object 24@ exists 
jf @SUKUNA_50586 
write_int_to_ini_file 20 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
Camera.Shake(100)
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
09F1: play_audio_at_actor 28@ event 1189 
09F1: play_audio_at_actor 28@ event 1136 
04C4: store_coords_to 1@ 2@ 3@ from_actor 28@ with_offset 0.0 0.0 -0.5 
08C7: put_actor 28@ at 1@ 2@ 3@ dont_warp_gang 
0400: store_coords_to 16@ 17@ 18@ from_object 24@ with_offset 0.0 5.0 0.0 
0400: store_coords_to 19@ 20@ 21@ from_object 24@ with_offset 0.0 0.0 0.0 
0063: 16@ -= 19@ // (float) 
0063: 17@ -= 20@ // (float) 
0063: 18@ -= 21@ // (float) 
16@ *= 20.0 
17@ *= 20.0 
18@ *= 20.0 
083C: set_actor 28@ velocity_in_direction_XYZ 16@ 17@ 18@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor 28@ with_offset 0.0 0.0 0.0 
09B8: create_blood_gush_at 1@ 2@ 3@ with_offset 0.0 0.0 0.0 density 90 on_actor 28@ 
Actor.Health(28@) = 0
0792: disembark_instantly_actor 28@ 
0829: actor 28@ perform_animation "KO_SPIN_L" IFP_file "PED" 4.0 time -1 and_dies 
05BE: AS_actor 28@ die 
0762: AS_actor 28@ dies 
0321: AS_actor 28@ die_headshotted 
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_46883
if 
  $CLV == 2 
jf @SUKUNA_47266 
if 
   not Actor.Dead(28@)
jf @SUKUNA_50586 
   not Actor.Driving(28@)
jf @SUKUNA_50586 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -50.0 
if 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 5.0 5.0 3.0 
jf @SUKUNA_50586 
Camera.Shake(200)
write_int_to_ini_file 20 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
05C1: AS_actor 28@ speak_from_audio_table 346 
0792: disembark_instantly_actor 28@ 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor 28@ perform_animation "HIT_WALL" IFP "PED" framedelta 100.0 loopA 0 lockX 0 lockY 0 lockF 0 time -1 // versionB 
0614: set_actor 28@ animation "HIT_WALL" progress_to 0.0 // 0.0 to 1.0 
0393: actor 28@ perform_animation "HIT_WALL" at 2.0 times_normal_rate 
10@ = Actor.Health(28@)
10@ -= 100 
if 
  10@ > 10 
gosub_if_false @SUKUNA_47257 
Actor.Health(28@) = 10@
jump @SUKUNA_50586 

:SUKUNA_47257
10@ = 5 
return 

:SUKUNA_47266
if 
  $CLV == -2 
jf @SUKUNA_47534 
if 
   not Actor.Dead(28@)
jf @SUKUNA_50586 
if 
   Actor.Animation(28@) == "HIT_WALL"
jf @SUKUNA_50586 
write_int_to_ini_file 20 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
Camera.Shake(200)
10@ = Actor.Health(28@)
if 
  10 > 10@ 
jf @SUKUNA_47470 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0792: disembark_instantly_actor 28@ 
05BE: AS_actor 28@ die 
0762: AS_actor 28@ dies 
0321: AS_actor 28@ die_headshotted 
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_47470
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
05BB: AS_actor 28@ fall_down 0 time_on_ground 1000 
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_47534
if 
  $CLV == 4 
jf @SUKUNA_47703 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
if 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 7.0 7.0 2.0 
jf @SUKUNA_50586 
if 
803B:   not  31@ == 28@ // (int) 
jf @SUKUNA_50586 
if 
   not Actor.Driving(28@)
jf @SUKUNA_50586 
05BB: AS_actor 28@ fall_down 0 time_on_ground 1000 
10@ = Actor.Health(28@)
10@ -= 25 
Actor.Health(28@) = 10@
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_47703
if 
  $CLV == 5 
jf @SUKUNA_48774 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -1.0 0.0 
if 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.5 3.5 2.0 
jf @SUKUNA_50586 
   not Actor.Driving(28@)
jf @SUKUNA_50586 
080E: get_actor 28@ ped_event_to 11@ 
if 
   not 11@ == 10 
jf @SUKUNA_50586 
if 
   not Actor.Animation(28@) == "KO_SHOT_STOM"
jf @SUKUNA_50586 
if or
  29@ == 0 
   not 29@ > 1 
jf @SUKUNA_47892 
29@ = 1 

:SUKUNA_47892
write_int_to_ini_file 20 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
stream_custom_script_from_label @SUKUNA_57337 
0792: disembark_instantly_actor 28@ 
Camera.Shake(100)
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.0 0.0 -0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.0 0.0 0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset -0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset -0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.1 0.0 0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset -0.1 0.0 -0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 -0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0669: 0@ = attach_particle "CLV_IMP_FX" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0669: 0@ = attach_particle "IMP" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
10@ = Actor.Health(28@)
if 
  10@ > 10 
jf @SUKUNA_48731 
0615: define_AS_pack_begin 20@ 
05BB: AS_actor 28@ fall_down 3 time_on_ground 500 
0616: define_AS_pack_end 20@ 
0618: assign_actor 28@ to_AS_pack 20@ 
061B: remove_references_to_AS_pack 20@ 
jump @SUKUNA_48762 

:SUKUNA_48731
0829: actor 28@ perform_animation "KO_SHOT_STOM" IFP_file "PED" 10.0 time -1 and_dies 

:SUKUNA_48762
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_48774
if 
  $CLV == 6 
jf @SUKUNA_49145 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 0.0 
if 
   Actor.Animation($PLAYER_ACTOR) == "ATK_3"
jf @SUKUNA_50586 
if and
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.5 1.7 1.5 
   not Actor.Driving(28@)
   not Actor.Dead(28@)
jf @SUKUNA_50586 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 2.0 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 9.0 
5@ *= 9.0 
6@ *= 9.0 
Actor.StorePos(28@, 7@, 8@, 9@)
08C7: put_actor 28@ at 7@ 8@ 9@ dont_warp_gang 
083C: set_actor 28@ velocity_in_direction_XYZ 4@ 5@ 6@ 
04C4: store_coords_to 1@ 2@ 3@ from_actor 28@ with_offset 0.0 0.0 0.0 
10@ = Actor.Health(28@)
10@ -= 25 
if 
  10@ > 10 
gosub_if_false @SUKUNA_46262 
Actor.Health(28@) = 10@
0687: clear_actor 28@ task 
05E2: AS_actor 28@ kill_actor $PLAYER_ACTOR 
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_49145
if 
  $CLV == 7 
jf @SUKUNA_49472 
if and
803C:   not  $PLAYER_ACTOR == 28@ // (int) 
   not Actor.Dead(28@)
   not Actor.Driving(28@)
jf @SUKUNA_50586 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if and
80FE:   not actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 5.0 5.0 5.0 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 100.0 100.0 5.0 
jf @SUKUNA_50586 
803C:   not  $PLAYER_ACTOR == 28@ // (int) 
jf @SUKUNA_50586 
0792: disembark_instantly_actor 28@ 
02A9: set_actor 28@ immune_to_nonplayer 1 
0085: $7002(30@,128i) = 28@ // (int) 
Actor.StorePos(28@, 1@, 2@, 3@)
0087: $AGLX(30@,128f) = 1@ // (float) 
0087: $AGLY(30@,128f) = 2@ // (float) 
0087: $AGLZ(30@,128f) = 3@ // (float) 
Actor.StorePos($PLAYER_ACTOR, 1@, 2@, 3@)
Actor.StorePos(28@, 4@, 5@, 6@)
0063: 1@ -= 4@ // (float) 
0087: $ANGELX(30@,128f) = 1@ // (float) 
0063: 2@ -= 5@ // (float) 
0087: $ANGELY(30@,128f) = 2@ // (float) 
30@ += 1 
29@ += 1 
jump @SUKUNA_50586 

:SUKUNA_49472
if 
  $CLV == 8 
jf @SUKUNA_50586 
if 
03CA:   object 20@ exists 
jf @SUKUNA_50586 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 0.0 0.0 0.0 
if 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 200.0 200.0 200.0 
jf @SUKUNA_50586 
if and
   not Actor.Driving(28@)
   not Actor.Dead(28@)
jf @SUKUNA_50586 
Camera.Shake(200)
if 
   not Actor.Animation(28@) == "KO_SHOT_STOM"
jf @SUKUNA_50586 
0792: disembark_instantly_actor 28@ 
Camera.Shake(100)
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.0 0.0 -0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.0 0.0 0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset -0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset -0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.1 0.0 0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 0.0 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset -0.1 0.0 -0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset 0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 -0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
04C4: store_coords_to 4@ 5@ 6@ from_actor 28@ with_offset 0.1 0.0 -0.1 
04C4: store_coords_to 7@ 8@ 9@ from_actor 28@ with_offset -0.1 0.0 0.1 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
10@ = Actor.Health(28@)
if 
  10@ > 10 
jf @SUKUNA_50429 
   not Actor.Animation(28@) == "FUKUMA_IMP"
jf @SUKUNA_50495 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
0812: AS_actor 28@ perform_animation "FUKUMA_IMP" IFP "SUKUNA" framedelta 4.0 loopA 0 lockX 1 lockY 1 lockF 0 time -1 // versionB 
jump @SUKUNA_50495 

:SUKUNA_50429
0792: disembark_instantly_actor 28@ 
0332: set_actor 28@ bleeding 1 
0669: 0@ = attach_particle "BLOOD_HELI" to_actor 28@ with_offset 0.0 0.0 0.0 type 1 
064F: remove_references_to_particle 0@ 
Actor.Health(28@) = 0
0321: AS_actor 28@ die_headshotted 

:SUKUNA_50495
Actor.RemoveReferences(28@)
jump @SUKUNA_50586 

:SUKUNA_50507
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
00FE:   actor 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 10.0 10.0 2.0 
jf @SUKUNA_50586 
0326: $BURN = create_actor 28@ fire 

:SUKUNA_50586
27@ += 256 
  27@ > 35584 
jf @SUKUNA_45799 
read_memory 26@ = read_memory 12010644 size 4 virtual_protect 0 
26@ += 4 
read_memory 26@ = read_memory 26@ size 4 virtual_protect 0 
27@ = 0 

:SUKUNA_50651
read_memory 28@ = read_memory 26@ size 1 virtual_protect 0 
26@ += 1 
if and
  28@ >= 0 
  128 > 28@ 
jf @SUKUNA_54773 
005A: 28@ += 27@ // (int) 
if 
056E:   car 28@ defined 
jf @SUKUNA_54773 
if 
   not Actor.Animation($PLAYER_ACTOR) == "FUGA"
jf @SUKUNA_54671 
if 
  $CLV == 0 
jf @SUKUNA_50991 
   not Car.Wrecked(28@)
jf @SUKUNA_54773 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 3.0 3.0 2.0 
jf @SUKUNA_54773 
07DA: set_car 28@ rotation_velocity_XYZ 1.0 1.0 1.0 through_center_of_body 
Camera.Shake(100)
03F5: set_car 28@ apply_damage_rules 1 
054F: clear_car 28@ damage 
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
gosub @SUKUNA_51790 
10@ = Car.Health(28@)
10@ -= 50 
Car.Health(28@) = 10@
Car.RemoveReferences(28@)
jump @SUKUNA_54773 

:SUKUNA_50991
if 
  $CLV == 1 
jf @SUKUNA_51522 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 7.0 2.5 2.0 
jf @SUKUNA_54773 
03F5: set_car 28@ apply_damage_rules 1 
054F: clear_car 28@ damage 
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
0400: store_coords_to 16@ 17@ 18@ from_object 24@ with_offset 0.0 3.0 0.0 
0400: store_coords_to 19@ 20@ 21@ from_object 24@ with_offset 0.0 0.0 0.0 
0063: 16@ -= 19@ // (float) 
0063: 17@ -= 20@ // (float) 
0063: 18@ -= 21@ // (float) 
16@ *= 0.3 
17@ *= 0.3 
18@ *= 0.3 
07D5: set_car 28@ velocity_in_direction_XYZ 16@ 17@ 18@ rotation_velocitiesXY 0.2 0.2 unk 0.0 
gosub @SUKUNA_51357 
10@ = Car.Health(28@)
10@ -= 500 
Car.Health(28@) = 10@
Camera.Shake(100)
gosub @SUKUNA_51790 
Car.RemoveReferences(28@)
jump @SUKUNA_54773 

:SUKUNA_51357
0400: store_coords_to 4@ 5@ 6@ from_object 24@ with_offset -0.5 -0.5 1.0 
0400: store_coords_to 7@ 8@ 9@ from_object 24@ with_offset 0.0 0.0 0.0 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 10.5 
5@ *= 10.5 
6@ *= 10.5 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 0.0 0.0 0.0 
08EB: create_sparks_at 7@ 8@ 9@ velocity_direction 4@ 5@ 6@ density 60 
return 

:SUKUNA_51522
if 
  $CLV == 2 
jf @SUKUNA_51870 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -50.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 5.0 5.0 3.0 
jf @SUKUNA_54773 
07DA: set_car 28@ rotation_velocity_XYZ 1.0 1.0 1.0 through_center_of_body 
Camera.Shake(100)
03F5: set_car 28@ apply_damage_rules 1 
054F: clear_car 28@ damage 
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
gosub @SUKUNA_51790 
10@ = Car.Health(28@)
10@ -= 100 
Car.Health(28@) = 10@
Car.RemoveReferences(28@)
jump @SUKUNA_54773 
Car.StorePos(28@, 1@, 2@, 3@)
070C: explode_car_without_radius_damage 28@ 
Car.RemoveReferences(28@)
jump @SUKUNA_54773 

:SUKUNA_51790
30@ = Car.Model(28@)
if 
0A01:   model 30@ car 
jf @SUKUNA_51868 
0697: set_car 28@ remove_component 4 visible_effect_flag 1 
0689: set_car 28@ remove_door 0 removed_door_visible 1 
0689: set_car 28@ remove_door 1 removed_door_visible 1 
0689: set_car 28@ remove_door 2 removed_door_visible 1 
0689: set_car 28@ remove_door 3 removed_door_visible 1 
0689: set_car 28@ remove_door 4 removed_door_visible 1 

:SUKUNA_51868
return 

:SUKUNA_51870
if 
  $CLV == 4 
jf @SUKUNA_52100 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 4.5 4.5 2.0 
jf @SUKUNA_54773 
07DA: set_car 28@ rotation_velocity_XYZ 2.0 2.0 2.0 through_center_of_body 
Camera.Shake(100)
03F5: set_car 28@ apply_damage_rules 1 
054F: clear_car 28@ damage 
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
10@ = Car.Health(28@)
10@ -= 10 
Car.Health(28@) = 10@
Car.RemoveReferences(28@)
jump @SUKUNA_54773 

:SUKUNA_52100
if 
  $CLV == 5 
jf @SUKUNA_52864 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -1.5 0.0 
if or
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.5 4.0 2.0 
0547:   actor $PLAYER_ACTOR colliding_with_car 28@ 
jf @SUKUNA_54773 
   not Car.Wrecked(28@)
jf @SUKUNA_54773 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 0.5 0.0 1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 0.5 0.0 -1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 0.0 0.0 -1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 0.0 0.0 1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset -0.5 0.0 1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -0.5 0.0 -1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset -1.0 0.0 0.5 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 1.0 0.0 0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 1.0 0.0 0.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -1.0 0.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset -1.0 0.0 -0.5 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 1.0 0.0 -0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 1.0 0.0 1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -1.0 0.0 -1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 1.0 0.0 -1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -1.0 0.0 1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
jump @SUKUNA_54773 

:SUKUNA_52864
if 
  $CLV == 6 
jf @SUKUNA_53226 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 2.8 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 2.5 2.5 2.5 
jf @SUKUNA_54773 
Camera.Shake(100)
03F5: set_car 28@ apply_damage_rules 1 
054F: clear_car 28@ damage 
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset 0.0 2.0 0.5 
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 0.12 
5@ *= 0.12 
6@ *= 0.2 
07D5: set_car 28@ velocity_in_direction_XYZ 4@ 5@ 6@ rotation_velocitiesXY 0.2 0.2 unk 0.0 
10@ = Car.Health(28@)
10@ -= 100 
Car.Health(28@) = 10@
Camera.Shake(100)
gosub @SUKUNA_51790 
Car.RemoveReferences(28@)
jump @SUKUNA_54773 

:SUKUNA_53226
if 
  $CLV == 7 
jf @SUKUNA_53805 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 6.0 6.0 2.5 
jf @SUKUNA_54773 
Camera.Shake(200)
Car.SetImmunities(28@, True, True, True, True, True)
Car.Health(28@) = 100
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 5.0 
Object.Create(24@, 3104, 1@, 2@, 3@)
Object.CollisionDetection(24@, False)
0750: set_object 24@ visibility 0 
04C4: store_coords_to 14@ 15@ 16@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.2 
0400: store_coords_to 17@ 18@ 19@ from_object 24@ with_offset 0.0 0.0 -0.2 
050A: 20@ = distance_between_XYZ 17@ 18@ 19@ and_XYZ 14@ 15@ 16@ 
0063: 14@ -= 17@ // (float) 
0063: 15@ -= 18@ // (float) 
0063: 16@ -= 19@ // (float) 
0073: 14@ /= 20@ // (float) 
0073: 15@ /= 20@ // (float) 
0073: 16@ /= 20@ // (float) 
0604: get_Z_angle_for_point 14@ 15@ store_to 10@ 
Object.Angle(24@) = 10@
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
0400: store_coords_to 4@ 5@ 6@ from_object 24@ with_offset 0.0 -2.0 -3.0 
0400: store_coords_to 7@ 8@ 9@ from_object 24@ with_offset 0.0 0.0 -3.5 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
0063: 6@ -= 9@ // (float) 
4@ *= 0.3 
5@ *= 0.3 
6@ *= 0.3 
07D5: set_car 28@ velocity_in_direction_XYZ 4@ 5@ 6@ rotation_velocitiesXY 0.2 0.2 unk 0.0 
10@ = Car.Health(28@)
10@ -= 20 
Car.Health(28@) = 10@
Camera.Shake(100)
Object.Destroy(24@)
Car.RemoveReferences(28@)
jump @SUKUNA_54773 

:SUKUNA_53805
if 
  $CLV == 8 
jf @SUKUNA_54773 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 0.0 0.0 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 200.0 200.0 200.0 
jf @SUKUNA_54773 
if 
   not Car.Wrecked(28@)
jf @SUKUNA_54773 
07DA: set_car 28@ rotation_velocity_XYZ 1.0 1.0 1.0 through_center_of_body 
Camera.Shake(100)
03F5: set_car 28@ apply_damage_rules 1 
054F: clear_car 28@ damage 
0407: store_coords_to 1@ 2@ 3@ from_car 28@ with_offset 0.0 0.0 0.0 
018C: play_sound 1135 at 1@ 2@ 3@ 
018C: play_sound 1148 at 0.0 0.0 0.0 
04FE: deflate_tire 1 on_car 28@ 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 0.5 0.0 1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 0.5 0.0 -1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 0.0 0.0 -1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 0.0 0.0 1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset -0.5 0.0 1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -0.5 0.0 -1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset -1.0 0.0 0.5 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 1.0 0.0 0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 1.0 0.0 0.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -1.0 0.0 0.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset -1.0 0.0 -0.5 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset 1.0 0.0 -0.5 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 1.0 0.0 1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -1.0 0.0 -1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
0407: store_coords_to 4@ 5@ 6@ from_car 28@ with_offset 1.0 0.0 -1.0 
0407: store_coords_to 7@ 8@ 9@ from_car 28@ with_offset -1.0 0.0 1.0 
06BC: create_M4_shoot_from 4@ 5@ 6@ target 7@ 8@ 9@ energy 500 
jump @SUKUNA_54773 

:SUKUNA_54671
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
if 
01AF:   car 28@ sphere 0 in_sphere 1@ 2@ 3@ radius 10.0 10.0 2.0 
jf @SUKUNA_54773 
0325: $BURN2 = create_car 28@ fire 
10@ = Car.Health(28@)
10@ -= 25 
Car.Health(28@) = 10@

:SUKUNA_54773
27@ += 256 
if 
  27@ > 27904 
jf @SUKUNA_50651 
read_memory 26@ = read_memory 12010652 size 4 virtual_protect 0 
26@ += 4 
read_memory 26@ = read_memory 26@ size 4 virtual_protect 0 
27@ = 0 

:SUKUNA_54840
read_memory 28@ = read_memory 26@ size 1 virtual_protect 0 
26@ += 1 
if and
  28@ >= 0 
  128 > 28@ 
jf @SUKUNA_55844 
005A: 28@ += 27@ // (int) 
if and
03CA:   object 28@ exists 
803B:   not  1@ == 28@ // (int) 
803B:   not  2@ == 28@ // (int) 
803B:   not  3@ == 28@ // (int) 
803B:   not  4@ == 28@ // (int) 
803B:   not  5@ == 28@ // (int) 
803B:   not  6@ == 28@ // (int) 
803B:   not  7@ == 28@ // (int) 
jf @SUKUNA_55844 
if and
803B:   not  8@ == 28@ // (int) 
803B:   not  9@ == 28@ // (int) 
803B:   not  10@ == 28@ // (int) 
803B:   not  11@ == 28@ // (int) 
803B:   not  12@ == 28@ // (int) 
803B:   not  13@ == 28@ // (int) 
803B:   not  14@ == 28@ // (int) 
803B:   not  15@ == 28@ // (int) 
jf @SUKUNA_55844 
if and
803B:   not  16@ == 28@ // (int) 
803B:   not  17@ == 28@ // (int) 
803B:   not  18@ == 28@ // (int) 
803B:   not  19@ == 28@ // (int) 
803B:   not  20@ == 28@ // (int) 
803B:   not  21@ == 28@ // (int) 
803B:   not  22@ == 28@ // (int) 
803B:   not  23@ == 28@ // (int) 
jf @SUKUNA_55844 
if and
803B:   not  24@ == 28@ // (int) 
803B:   not  25@ == 28@ // (int) 
803B:   not  30@ == 28@ // (int) 
803B:   not  31@ == 28@ // (int) 
jf @SUKUNA_55844 
if 
  $CLV == 0 
jf @SUKUNA_55254 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 2.5 2.5 2.0 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55254
if 
  $CLV == 1 
jf @SUKUNA_55350 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 0.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 7.0 2.5 5.0 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55350
if 
  $CLV == 2 
jf @SUKUNA_55446 
0400: store_coords_to 1@ 2@ 3@ from_object 24@ with_offset 0.0 0.0 -50.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 5.0 5.0 3.0 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55446
if 
  $CLV == 4 
jf @SUKUNA_55542 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 7.0 7.0 2.0 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55542
if 
  $CLV == 5 
jf @SUKUNA_55638 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 -1.0 0.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 2.5 3.5 2.0 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55638
if 
  $CLV == 6 
jf @SUKUNA_55734 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 1.5 0.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 2.0 1.5 1.5 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55734
if 
  $CLV == 8 
jf @SUKUNA_55844 
0400: store_coords_to 1@ 2@ 3@ from_object 20@ with_offset 0.0 0.0 0.0 
if 
04E6:   object 28@ near_point 1@ 2@ 3@ radius 200.0 200.0 200.0 flag 0 
jf @SUKUNA_55844 
jump @SUKUNA_55830 

:SUKUNA_55830
071F: set_object 28@ health_to 0 
0723: break_object 28@ intensity 1 

:SUKUNA_55844
27@ += 256 
  27@ > 89344 
jf @SUKUNA_54840 
return 

:SUKUNA_55871
if 
84EE:   not animation "SUKUNA_W" loaded 
jf @SUKUNA_55915 
04ED: load_animation "SUKUNA_W" 
038B: load_requested_models 
jump @SUKUNA_55917 

:SUKUNA_55915
return 

:SUKUNA_55917
wait 0 
jump @SUKUNA_55871 

:SUKUNA_55928
04C4: store_coords_to 5@ 6@ 7@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
068D: get_camera_position_to 9@ 17@ 20@ 
0087: 20@ = 9@ // (float) 
0087: 31@ = 17@ // (float) 
0063: 20@ -= 5@ // (float) 
0063: 31@ -= 6@ // (float) 
20@ *= -2.0 
31@ *= -2.0 
005B: 9@ += 20@ // (float) 
005B: 17@ += 31@ // (float) 
0063: 9@ -= 5@ // (float) 
0063: 17@ -= 6@ // (float) 
9@ *= 5.0 
17@ *= 5.0 
0604: get_Z_angle_for_point 9@ 17@ store_to 31@ 
Actor.Angle($PLAYER_ACTOR) = 31@
return 

:SUKUNA_56093
04C4: store_coords_to 14@ 15@ 16@ from_actor 31@ with_offset 0.0 0.0 -0.2 
04C4: store_coords_to 17@ 18@ 19@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.2 
050A: 20@ = distance_between_XYZ 17@ 18@ 19@ and_XYZ 14@ 15@ 16@ 
0063: 14@ -= 17@ // (float) 
0063: 15@ -= 18@ // (float) 
0063: 16@ -= 19@ // (float) 
0073: 14@ /= 20@ // (float) 
0073: 15@ /= 20@ // (float) 
0073: 16@ /= 20@ // (float) 
0604: get_Z_angle_for_point 14@ 15@ store_to 30@ 
Actor.Angle($PLAYER_ACTOR) = 30@
return 

:SUKUNA_56243
wait 0 
31@ = 0 
1@ = 0 

:SUKUNA_56261
0085: 0@ = 1@ // (int) 
2@ = 0 

:SUKUNA_56276
if 
056D:   actor 0@ defined 
jf @SUKUNA_56323 
if and
803C:   not  $PLAYER_ACTOR == 0@ // (int) 
   not Actor.Dead(0@)
jf @SUKUNA_56323 
gosub @SUKUNA_56763 

:SUKUNA_56323
0@ += 1 
2@ += 1 
  2@ > 127 
jf @SUKUNA_56276 
1@ += 256 
  1@ > 35584 
jf @SUKUNA_56261 
if 
056D:   actor 31@ defined 
jf @SUKUNA_56754 
if 
86EE:   not actor 31@ in_group $PLAYER_GROUP 
jf @SUKUNA_56754 
if 
   not Actor.Driving(31@)
jf @SUKUNA_56754 
068E: get_camera_target_point_to 3@ 4@ 5@ 
068D: get_camera_position_to 6@ 7@ 8@ 
8@ -= 0.1 
0063: 3@ -= 6@ // (float) 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
3@ *= 20.0 
4@ *= 20.0 
5@ *= 30.0 
if 
00FE:   actor 31@ sphere 0 in_sphere 6@ 7@ 8@ radius 20.0 20.0 20.0 
jf @SUKUNA_56754 
04C4: store_coords_to 14@ 15@ 16@ from_actor 31@ with_offset 0.0 0.0 -0.2 
04C4: store_coords_to 17@ 18@ 19@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 -0.2 
if 
06BD:   no_obstacles_between 14@ 15@ 16@ and 17@ 18@ 19@ solid 1 car 0 actor 0 object 1 particle 0 
jf @SUKUNA_56677 
if 
056D:   actor 31@ defined 
jf @SUKUNA_56677 
jump @SUKUNA_56752 

:SUKUNA_56677
31@ = 0 
04C4: store_coords_to 14@ 15@ 16@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 
get_random_char_in_sphere_no_save_recursive 31@ = random_char_near_point 14@ 15@ 16@ in_radius 20.0 find_next 1 pass_deads 1 
if 
056D:   actor 31@ defined 
jf @SUKUNA_56754 

:SUKUNA_56752
return 

:SUKUNA_56754
31@ = 0 
return 

:SUKUNA_56763
if 
056D:   actor 31@ defined 
jf @SUKUNA_57073 
068E: get_camera_target_point_to 3@ 4@ 5@ 
068D: get_camera_position_to 6@ 7@ 8@ 
8@ -= 0.1 
0063: 3@ -= 6@ // (float) 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
3@ *= 150.0 
4@ *= 150.0 
5@ *= 150.0 
Actor.StorePos($PLAYER_ACTOR, 6@, 7@, 8@)
005B: 3@ += 6@ // (float) 
005B: 4@ += 7@ // (float) 
005B: 5@ += 8@ // (float) 
Actor.StorePos(31@, 9@, 10@, 11@)
050A: 12@ = distance_between_XYZ 3@ 4@ 5@ and_XYZ 9@ 10@ 11@ 
050A: 13@ = distance_between_XYZ 6@ 7@ 8@ and_XYZ 9@ 10@ 11@ 
005B: 12@ += 13@ // (float) 
Actor.StorePos(0@, 9@, 10@, 11@)
050A: 13@ = distance_between_XYZ 3@ 4@ 5@ and_XYZ 9@ 10@ 11@ 
050A: 11@ = distance_between_XYZ 6@ 7@ 8@ and_XYZ 9@ 10@ 11@ 
005B: 13@ += 11@ // (float) 
if 
0025:   12@ > 13@ // (float) 
jf @SUKUNA_57066 
0085: 31@ = 0@ // (int) 

:SUKUNA_57066
jump @SUKUNA_57081 

:SUKUNA_57073
0085: 31@ = 0@ // (int) 

:SUKUNA_57081
return 

:SUKUNA_57083
089F: get_actor 31@ pedtype_to 20@ 
if and
   not 20@ == 7 
   not 20@ == 8 
   not 20@ == 9 
   not 20@ == 10 
   not 20@ == 11 
   not 20@ == 12 
   not 20@ == 13 
   not 20@ == 14 
jf @SUKUNA_57188 
   not 20@ == 15 
   not 20@ == 16 
   not 20@ == 17 
jf @SUKUNA_57188 

:SUKUNA_57186
return 

:SUKUNA_57188
wait 0 
Actor.StorePos(31@, 1@, 2@, 3@)
10@ = Actor.Angle(31@)
11@ = Actor.Health(31@)
0665: get_actor 31@ model_to 29@ 
Actor.DestroyInstantly(31@)
Actor.Create(31@, 20@, 29@, 1@, 2@, -100.0)
Actor.Angle(31@) = 10@
gosub @SUKUNA_57316 
Actor.Health(31@) = 12@
03FE: set_actor 31@ money 12@ 
gosub @SUKUNA_57328 
Actor.GiveWeaponAndAmmo(31@, WeaponType.Pistol, 60)
Model.Destroy(#COLT45)
jump @SUKUNA_57186 

:SUKUNA_57316
0209: 12@ = random_int_in_ranges 0 2000 
return 

:SUKUNA_57328
Model.Load(#COLT45)
038B: load_requested_models 
return 

:SUKUNA_57337
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
if 
  10@ == -1 
jf @SUKUNA_58988 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 1 
jf @SUKUNA_58328 
TIMERA = 0 

:SUKUNA_57443
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
if 
  10@ == -1 
jf @SUKUNA_57678 
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 1 
jf @SUKUNA_57678 
0209: 15@ = random_int_in_ranges 500 2500 
wait 0 
if 
001D:   TIMERA > 15@ // (int) 
jf @SUKUNA_57443 
0209: 15@ = random_int_in_ranges 0 9 
if 
gosub @SUKUNA_57746 
jf @SUKUNA_57678 
write_int_to_ini_file 1 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
Audiostream.PerformAction(0@, AudioStreamState.Play)

:SUKUNA_57640
wait 0 
0@ = Audiostream.State(1@)
  1@ == -1 
jf @SUKUNA_57640 
Audiostream.Release(0@)
jump @SUKUNA_57678 

:SUKUNA_57678
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 
jump @SUKUNA_60388 

:SUKUNA_57746
0871: init_jump_table 15@ total_jumps 9 default_jump 0 @SUKUNA_58324 jumps 0 @SUKUNA_57874 1 @SUKUNA_57918 2 @SUKUNA_57962 3 @SUKUNA_58006 4 @SUKUNA_58050 5 @SUKUNA_58094 6 @SUKUNA_58138 
0872: jump_table_jumps 7 @SUKUNA_58182 8 @SUKUNA_58226 9 @SUKUNA_58270 -1 @SUKUNA_58324 -1 @SUKUNA_58324 -1 @SUKUNA_58324 -1 @SUKUNA_58324 -1 @SUKUNA_58324 -1 @SUKUNA_58324 

:SUKUNA_57874
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE1.MP3")
jump @SUKUNA_58315 

:SUKUNA_57918
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE2.MP3")
jump @SUKUNA_58315 

:SUKUNA_57962
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE3.MP3")
jump @SUKUNA_58315 

:SUKUNA_58006
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE4.MP3")
jump @SUKUNA_58315 

:SUKUNA_58050
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE5.MP3")
jump @SUKUNA_58315 

:SUKUNA_58094
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE6.MP3")
jump @SUKUNA_58315 

:SUKUNA_58138
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE7.MP3")
jump @SUKUNA_58315 

:SUKUNA_58182
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE8.MP3")
jump @SUKUNA_58315 

:SUKUNA_58226
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE9.MP3")
jump @SUKUNA_58315 

:SUKUNA_58270
0@ = Audiostream.Load("CLEO\SOUND\VOICE\MIDVOICE10.MP3")
jump @SUKUNA_58315 

:SUKUNA_58315
0485:   return_true 
jump @SUKUNA_58326 

:SUKUNA_58324
059A:   return_false 

:SUKUNA_58326
return 

:SUKUNA_58328
read_int_from_ini_file 10@ = read_int_from_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
if 
  10@ == 2 
jf @SUKUNA_57678 
0209: 15@ = random_int_in_ranges 0 6 
if 
gosub @SUKUNA_58479 
jf @SUKUNA_57678 
write_int_to_ini_file 2 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "VC" 
Audiostream.PerformAction(0@, AudioStreamState.Play)

:SUKUNA_58441
wait 0 
0@ = Audiostream.State(1@)
  1@ == -1 
jf @SUKUNA_58441 
Audiostream.Release(0@)
jump @SUKUNA_57678 

:SUKUNA_58479
0871: init_jump_table 15@ total_jumps 6 default_jump 0 @SUKUNA_58984 jumps 0 @SUKUNA_58607 1 @SUKUNA_58653 2 @SUKUNA_58699 3 @SUKUNA_58745 4 @SUKUNA_58791 5 @SUKUNA_58837 6 @SUKUNA_58883 
0872: jump_table_jumps 7 @SUKUNA_58929 -1 @SUKUNA_58984 -1 @SUKUNA_58984 -1 @SUKUNA_58984 -1 @SUKUNA_58984 -1 @SUKUNA_58984 -1 @SUKUNA_58984 -1 @SUKUNA_58984 -1 @SUKUNA_58984 

:SUKUNA_58607
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE1.MP3")
jump @SUKUNA_58975 

:SUKUNA_58653
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE2.MP3")
jump @SUKUNA_58975 

:SUKUNA_58699
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE3.MP3")
jump @SUKUNA_58975 

:SUKUNA_58745
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE4.MP3")
jump @SUKUNA_58975 

:SUKUNA_58791
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE5.MP3")
jump @SUKUNA_58975 

:SUKUNA_58837
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE6.MP3")
jump @SUKUNA_58975 

:SUKUNA_58883
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE7.MP3")
jump @SUKUNA_58975 

:SUKUNA_58929
0@ = Audiostream.Load("CLEO\SOUND\VOICE\SHORTVOICE8.MP3")
jump @SUKUNA_58975 

:SUKUNA_58975
0485:   return_true 
jump @SUKUNA_58986 

:SUKUNA_58984
059A:   return_false 

:SUKUNA_58986
return 

:SUKUNA_58988
if 
  10@ == 20 
jf @SUKUNA_59296 
0209: 15@ = random_int_in_ranges 1 5 
if 
  15@ == 1 
jf @SUKUNA_59075 
0@ = Audiostream.Load("CLEO\SOUND\HIT_01.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59075
if 
  15@ == 2 
jf @SUKUNA_59135 
0@ = Audiostream.Load("CLEO\SOUND\HIT_02.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59135
if 
  15@ == 3 
jf @SUKUNA_59195 
0@ = Audiostream.Load("CLEO\SOUND\HIT_03.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59195
if 
  15@ == 4 
jf @SUKUNA_59255 
0@ = Audiostream.Load("CLEO\SOUND\HIT_04.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59255
0@ = Audiostream.Load("CLEO\SOUND\SLASH.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59296
if 
  10@ == 1 
jf @SUKUNA_59355 
0@ = Audiostream.Load("CLEO\SOUND\ATK_1.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59355
if 
  10@ == 2 
jf @SUKUNA_59414 
0@ = Audiostream.Load("CLEO\SOUND\ATK_2.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59414
if 
  10@ == 3 
jf @SUKUNA_59473 
0@ = Audiostream.Load("CLEO\SOUND\ATK_3.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59473
if 
  10@ == 4 
jf @SUKUNA_59532 
0@ = Audiostream.Load("CLEO\SOUND\ATK_4.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59532
if 
  10@ == 5 
jf @SUKUNA_59589 
0@ = Audiostream.Load("CLEO\SOUND\KAI.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59589
if 
  10@ == 6 
jf @SUKUNA_59647 
0@ = Audiostream.Load("CLEO\SOUND\FUGA.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59647
if 
  10@ == 7 
jf @SUKUNA_59707 
0@ = Audiostream.Load("CLEO\SOUND\G_SLAM.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59707
if 
  10@ == 8 
jf @SUKUNA_59771 
0@ = Audiostream.Load("CLEO\SOUND\SLASHES_E2.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59771
if 
  10@ == 9 
jf @SUKUNA_59831 
0@ = Audiostream.Load("CLEO\SOUND\S_DASH.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59831
if 
  10@ == 10 
jf @SUKUNA_59893 
0@ = Audiostream.Load("CLEO\SOUND\S_LAUGH2.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59893
if 
  10@ == 11 
jf @SUKUNA_59956 
0@ = Audiostream.Load("CLEO\SOUND\FACE_SLAM.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_59956
if 
  10@ == 12 
jf @SUKUNA_60016 
0@ = Audiostream.Load("CLEO\SOUND\STELEP.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_60016
if 
  10@ == 13 
jf @SUKUNA_60077 
0@ = Audiostream.Load("CLEO\SOUND\G_STOMP.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_60077
if 
  10@ == 14 
jf @SUKUNA_60206 
0209: 15@ = random_int_in_ranges 1 3 
if 
  15@ == 1 
jf @SUKUNA_60164 
0@ = Audiostream.Load("CLEO\SOUND\HIT_06.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_60164
0@ = Audiostream.Load("CLEO\SOUND\HIT_05.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_60206
if 
  10@ == 15 
jf @SUKUNA_60265 
0@ = Audiostream.Load("CLEO\SOUND\TELEP.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_60265
if 
  10@ == 16 
jf @SUKUNA_60388 
0@ = Audiostream.Load("CLEO\SOUND\CHOPPED.MP3")
Audiostream.PerformAction(0@, AudioStreamState.Play)
jump @SUKUNA_60326 

:SUKUNA_60326
wait 0 
0@ = Audiostream.State(1@)
  1@ == -1 
jf @SUKUNA_60326 
Audiostream.Release(0@)
write_int_to_ini_file 0 to_ini_file "CLEO\SUKUNA.INI" section "MOD" key "SFX" 

:SUKUNA_60388
terminate_this_script 
